Я пытаюсь использовать print.css для печати одного элемента div на странице, и у меня ничего не получается.

Пример моего кода таков:

<div class="print">
This div needs to be on one page.
</div>

<div class="print">
This div needs to print on a separate page.
</div>

У меня есть пара divs, как указано выше, и мне нужно, чтобы каждый div был на своей странице при печати. Я пробовал 'page-break-before' и 'page-break-after' в классе .print в print.css. Я не уверен, что я делаю неправильно.

Мне кажется, что 'page-break-after' будет правильным, и это решение, которое я всегда нахожу при поиске, но я просто не могу заставить его работать.


person Zach    schedule 04.02.2011    source источник
comment
Какой у вас CSS? Потому что вам нужен разрыв страницы после: всегда, а не только атрибут. Какой браузер? Проверено на нескольких?   -  person Sean    schedule 04.02.2011


Ответы (2)


попробуйте это после каждого тега </div>

<br clear="all" style="page-break-before:always" />

меня устраивает...

person Allex    schedule 04.02.2011
comment
Это работало, кроме как в Chrome. Кажется, что Chrome — единственный, кто все еще доставляет мне проблемы. Кажется, ничего не работает для этого. @Sean CSS - это .print {page-break-after:always;}, и этот класс применяется к нескольким элементам div, которые необходимо распечатать. - person Zach; 05.02.2011
comment
Safari также доставляет мне проблемы. Кажется, у webkit есть проблемы с разрывом страницы. - person Zach; 05.02.2011

Вы должны использовать правило css:

.print {page-break-after:always;}

У меня работает в Chrome 12.0 и Firefox 3.5.

Решение, данное Allex с использованием тега br, не работает в этой версии Chrome.

person Adrien Coquio    schedule 11.06.2011
comment
Протестировано в Chrome и Safari. Фантастика! - person Ehsan; 18.02.2014