У меня есть генератор HTML, который производит код, предназначенный для преобразования в несколько форматов. Предполагается, что этот генератор будет производить минимальное количество CSS, поскольку файлы будут использоваться только для этого.
Внутри сервера у меня работает безголовый LibreOffice, и сервис работает хорошо, в том смысле, что я передаю ему файл, и он возвращает мне преобразованную версию. Однако у меня проблема с изображениями и таблицами, для которых жестко заданная ширина установлена на 100%, так как они начинаются с левой стороны, правильно расположены после левого поля, но пересекают правое поле.
До сих пор я работаю с пониманием того, что это проблема css, и она велась так, как если бы она была для печати (HTML-код выглядит идеально, когда я открываю в браузере и как его печатать).
Вот мой первоначальный CSS:
@page {
size: 21cm 29.7cm;
margin: 1cm;
}
@media print {
html, body {
height: 100%;
width: 27.7cm;
margin: 0;
padding: 0;
overflow: hidden;
}
body > * {
max-width: 100%;
}
}
Интересно, что абзацы выглядят хорошо с полями. Возможно, я ошибаюсь, полагая, что LibreOffice будет использовать «print» для руководства преобразованием, но @page определенно работает (кроме того, что он понимает единицы измерения, но не имена размеров, такие как «legal») ..
Есть мысли?