добавить заголовок при разрыве страницы при использовании разрыва страницы: избегать wth css или javascript или из браузера? - PullRequest
1 голос
/ 14 января 2010

У меня есть страница с разделами в виде элементов div с внутренними элементами div и содержимым. Количество делений варьируется от менее одной страницы до нескольких страниц при печати. ​​

Я использую разрыв страницы: избегайте в каждом разделе div, чтобы все разделы никогда не печатались / не разделялись на 2 страницы. (Это я получаю только на работу в Firefox, но это совсем другая история ....!).

Проблема в том, что я хочу добавить изображение заголовка в начало каждой страницы при печати, но с использованием разрыва страницы: избегайте использования свойства css. Я не знаю, куда добавить заголовки, так как это работает при печати. ​​

Кто-нибудь знает, что я могу достичь этого? Могу ли я как-нибудь узнать, где будут разрывы страниц и добавить туда заголовок? или есть способ установить изображение заголовка в браузере, как вы можете текстовые документы и т. д.

помогите пожалуйста большое спасибо рик

Ответы [ 2 ]

0 голосов
/ 15 января 2010

Я не вижу способа добавить информацию заголовка с помощью CSS2 ( spec ). Существует способ добавить TEXT в «заголовок страницы» с помощью CSS3 ( ссылка , spec ). Я не уверен, что это также будет охватывать изображения, но это только начало. Вам нужно будет рассмотреть принятие CSS3 и, если это соответствует потребностям вашего бизнеса (из ссылки на википедию, похоже, только Opera поддерживает опцию @page, но эта информация может быть устаревшей).

Не думаю, что вы могли бы использовать javascript для вставки заголовков на каждую страницу, когда она форматируется для печати. Я не понимаю, как это можно сделать (но я могу ошибаться в этом).

Что вы можете сделать, это определить div, который невидим на странице браузера, но отображается на распечатанной странице. Примерно так должно это сделать:

<STYLE type="text/css">
@media print {
div.header {display:block;}
}
@media screen {
div.header {display:none;}
}
</STYLE>

После принудительного разрыва страницы вы можете поместить div, содержащий ваш заголовок. Это должно сработать для вас, в дальнейшем, возможно, CSS будет использоваться для выравнивания этого div с верхом страницы и т. Д. Конечно, это также требует использования принудительных разрывов страниц, что означает, что вам нужно заранее знать, сколько данные, которые вы можете поместить на страницу, не идеальны.

Надеюсь, это поможет.

0 голосов
/ 15 января 2010

Невозможно управлять печатной страницей из JS / HTML / CSS, потому что у вас нет доступа к драйверу принтера, поэтому вы не можете знать, какой размер бумаги или поля задал пользователь.

Чтобы обойти это, вы можете использовать компонент для создания PDF из вашего HTML, чтобы иметь больше контроля над макетом. Это должно быть сделано на стороне сервера.

...