Что такое код CSS для создания разрывов страниц при печати веб-страниц? - PullRequest
9 голосов
/ 07 февраля 2010

Что такое CSS-код для разрыва страницы при печати? Или еще лучше, есть ли какой-нибудь CSS-фреймворк для печати, такой как JQuery, для манипулирования DOM веб-страниц? Мне нужно печатать веб-страницы с контролем, как Adobe PDF, но без использования стороннего плагина. Отпечатки должны быть точными, например, контролировать количество пикселей, попадающих на верх каждой страницы (например, если мы хотим разместить наш логотип на заголовке каждой страницы.

Есть идеи?

Ответы [ 6 ]

15 голосов
/ 07 февраля 2010

page-break-before: always;

page-break-after: always;

5 голосов
/ 07 февраля 2010

Вы можете попытаться принудительно разорвать страницу, используя свойства разрыва страницы до или разрыва страницы .

Пиксельное управление печатью будет очень и очень трудно достичь. Например, каждый браузер добавляет нижний колонтитул и раздел заголовка, на который вы не можете повлиять, и только пользователь может отключить его. Браузеры игнорируют фоновые изображения и имеют тенденцию устанавливать поля по своему усмотрению.

Для краткого изложения того, как стилизовать HTML для печати, эта статья Smashing Magazine может содержать несколько указателей: Печать в Интернете: решения и методы

3 голосов
/ 07 февраля 2010

Поддержка браузера для печати очень слабая, в лучшем случае.Например, получить что-то вроде изображения заголовка страницы будет довольно сложно;Я не знаю ни одного браузера, который бы даже поддерживал объявление CSS «@page», не говоря уже о функциях запуска содержимого CSS3.

С другой стороны, инструментарий FlyingSaucer PDF для Java делает замечательную работупреобразования XHTML в PDF-файлы (особенно если учесть, что это бесплатно).Мы используем его с Freemarker для шаблонирования «страницы», но он обрабатывает изображения, запускает текст верхнего / нижнего колонтитула, даже ссылки внутри документа.

2 голосов
/ 08 февраля 2010

Я не уверен, какой язык сервера вы используете, но я добился большого успеха с wkhtmltopdf и wicked_pdf для Ruby on Rails.

1 голос
/ 07 февраля 2010

Невозможно получить точность печати на уровне пикселей из браузера. Ваш единственный вариант - PDF или аналогичный сторонний формат документа. Однако, если вы просто хотите убедиться, что логотип находится сверху страницы по сравнению с нижней частью следующей, вы можете использовать свойства разрыва страницы до и после

1 голос
/ 07 февраля 2010

На w3schools.com есть удобный Справочник по CSS . Поскольку большинство из нас не может вспомнить многие необычные свойства CSS, надеюсь, это полезно для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...