Могу ли я заставить разрыв страницы в HTML-печати?


Я делаю HTML-отчет, который будет доступен для печати, и у него есть "разделы", которые должны начинаться на новой странице.

есть ли способ поместить что-то в HTML/CSS, которое будет сигнализировать браузеру, что ему нужно заставить разрыв страницы (начать новую страницу) в этот момент?

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

4 102

4 ответа:

добавьте класс CSS под названием " pagebreak "(или" pb"), например:

.pagebreak { page-break-before: always; } /* page-break-after works, as well */

затем добавьте пустой тег DIV (или любой элемент блока, который генерирует поле), где нужно вставить разрыв страницы.

<div class="pagebreak"> </div>

Он не будет отображаться на странице, но будет разбивать страницу при печати.

попробуй такое ссылке

<style>
@media print
{
h1 {page-break-before:always}
}
</style>

вы можете использовать свойство CSS page-break-before (или page-break-after). Просто установите page-break-before: always на этих элементах уровня блока (например, заголовок,div,p или table элементов), которые должны начинаться с новой строки.

например, чтобы вызвать разрыв строки перед любым заголовком 2-го уровня и перед любым элементом в классе newpage (например, <div class=newpage>...), вы бы использовали

h2, .newpage { page-break-before: always }

@Крис Доггетт имеет смысл. Хотя, я нашел один забавный трюк на lvsys.com, и это на самом деле работает на firefox и chrome. Просто поместите этот комментарий в любом месте, где вы хотите вставить разрыв страницы. Вы также можете заменить <p> тег с любым блочным элементом.

<p><!-- pagebreak --></p>