В page-break
CSS няма действително свойство. Всъщност, това е набор от 3 имота: page-break-before
, page-break-after
и page-break-inside
. Тези свойства помагат да се определи как трябва да се държи документът при отпечатване. Например, за да направите отпечатан документ по-книжен.
Имоти
прекъсване на страницата преди
В page-break-before
имота добавя страница пауза преди елемента, към който се прилага.
Забележка : това свойство е в процес на замяна с по-общото break-before
свойство. Това ново свойство също обработва прекъсвания на колони и региони, като е синтактично съвместимо с page-break-before
. Затова преди да използвате page-break-before
, проверете дали можете да използвате break-before
вместо това.
Често използван случай за това е да го приложите към селектора, #comments
така че потребителят, отпечатващ страница с коментари, лесно да избере да отпечата целия документ, но да спре преди коментарите чисто.
прекъсване на страницата
В page-break-after
имота добавя страница пауза след елемента, към който се прилага.
Забележка : това свойство е в процес на замяна с по-общото break-after
свойство. Това ново свойство също обработва прекъсвания на колони и региони, като е синтактично съвместимо с page-break-after
. Затова преди да използвате page-break-after
, проверете дали можете да използвате break-after
вместо това.
прекъсване на страницата
В page-break-inside
имота добавя страница пауза вътре в елемента, към който се прилага.
Синтаксис
page-break-after : auto | always | avoid | left | right page-break-before : auto | always | avoid | left | right page-break-inside : auto | avoid
В left
и right
стойности за page-break-before
и page-break-after
се отнасят за разпространение оформление (като книга), където има обособен лявата и дясната страници. Те работят по следния начин:
left
принуждава едно или две прекъсвания на страници след елемента, така че следващата страница да бъде форматирана като лява страница.right
принуждава едно или две прекъсвания на страници след елемента, така че следващата страница да бъде форматирана като дясна страница.
Помислете always
за комбинация от двете. Спецификацията казва:
Съответстващ потребителски агент може да тълкува стойностите „ляво“ и „дясно“ като „винаги“.
Пример
@media print ( h2 ( page-break-before: always; ) h3, h4 ( page-break-after: avoid; ) pre, blockquote ( page-break-inside: avoid; ) )
Този кодов фрагмент прави 3 неща:
- принуждава прекъсване на страницата преди всички
h2
заглавия (може би маркерите h2 във вашия документ са заглавия на глави, които заслужават нова страница) - предотвратява прекъсвания на страници веднага след подзаглавия, защото това изглежда странно
- предотвратява прекъсвания на страници вътре в
pre
тагове и кавички на ниво блок
Поддръжка на браузър
Chrome | Сафари | Firefox | Опера | IE | Android | iOS |
---|---|---|---|---|---|---|
Всякакви | Всякакви | Всякакви | 7+ | 4+ | TBD | TBD |
Можете да печатате от мобилни устройства, като AirPrint на iOS, но не сме тествали толкова много. Ако някой има данни за поддръжка, да ни уведоми.