W3docs

Свойство CSS page-break-after

Свойство CSS page-break-after задаёт разрыв страницы после указанного элемента. Узнайте о значениях этого свойства.

Свойство CSS page-break-after управляет тем, принудительно ли вставляется разрыв страницы или он предотвращается после заданного элемента при печати документа или отображении в любом постраничном медиаконтексте (печать, экспорт в PDF, предварительный просмотр перед печатью). Разрыв страницы завершает текущую страницу и переносит следующее содержимое на новую страницу.

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

Свойство не оказывает видимого эффекта на экране; как правило, его помещают внутрь блока @media print, чтобы правила применялись только при печати документа. Оно не применяется к абсолютно позиционированным элементам.

Внимание

page-break-after является устаревшим. Его заменяет более функциональное свойство break-after, которое также работает с многоколоночными макетами и макетами на основе регионов. Для нового кода предпочтительно использовать break-after. Браузеры обрабатывают page-break-after как псевдоним break-after, поэтому существующие сайты продолжают работать.

Начальное значениеauto
Применяется кБлочные элементы.
НаследуетсяНет.
АнимируетсяНет.
ВерсияCSS2
DOM Syntaxobject.style.pageBreakAfter = "avoid";

Синтаксис

page-break-after: auto | avoid | always | left | right | initial | inherit;

Пример: начало каждого раздела с новой страницы

Распространённый вариант использования — принудительное начало каждого раздела верхнего уровня с отдельной печатной страницы. Примените page-break-after: always к каждому разделу, чтобы после него вставлялся разрыв:

@media print {
  .chapter {
    page-break-after: always;
  }
}
<div class="chapter">
  <h2>Chapter 1</h2>
  <p>...content...</p>
</div>
<div class="chapter">
  <h2>Chapter 2</h2>
  <p>...content...</p>
</div>

При печати Chapter 2 теперь начинается с верхней части страницы 2.

Пример: предотвращение разрыва после элемента

Используйте avoid, чтобы не допустить разрыва сразу после элемента — например, чтобы заголовок не оставался одиноким внизу страницы, оторванным от следующего за ним текста:

@media print {
  h2 {
    page-break-after: avoid;
  }
}

Совет: сочетайте с page-break-before и page-break-inside

page-break-after — одно из трёх связанных свойств. Используйте их вместе для полного контроля над макетами при печати:

  • page-break-before — управляет разрывами перед элементом.
  • page-break-inside — предотвращает разбивку элемента (таблицы или рисунка) на две страницы.

Значения

ЗначениеОписание
autoПо умолчанию. Позволяет браузеру самостоятельно решить, вставлять ли разрыв страницы после элемента.
avoidПо возможности предотвращает вставку разрыва страницы после элемента.
alwaysВсегда принудительно вставляет разрыв страницы после элемента.
leftПринудительно вставляет разрыв страницы после элемента так, чтобы следующая страница была отформатирована как левая.
rightПринудительно вставляет разрыв страницы после элемента так, чтобы следующая страница была отформатирована как правая.
initialУстанавливает свойство в значение по умолчанию (auto).
inheritНаследует значение свойства от родительского элемента.

Значения left и right в основном полезны при двусторонней печати, когда нужно, чтобы раздел начинался с определённой стороны разворота.

Примечание: для современной веб-разработки вместо page-break-after используйте свойство break-after, поскольку page-break-after является устаревшим.

Практика

Практика
Что делает свойство 'page-break-after' в CSS?
Что делает свойство 'page-break-after' в CSS?
Was this page helpful?