Não existe uma page-break
propriedade real no CSS. Na verdade, é um conjunto de 3 propriedades: page-break-before
, page-break-after
e page-break-inside
. Essas propriedades ajudam a definir como o documento deve se comportar quando impresso. Por exemplo, para tornar um documento impresso mais parecido com um livro.
Propriedades
quebra de página antes
A page-break-before
propriedade adiciona uma quebra de página antes do elemento ao qual é aplicada.
Nota : esta propriedade está em andamento para ser substituída pela break-before
propriedade mais genérica . Essa nova propriedade também lida com quebras de coluna e região, embora seja sintaticamente compatível com page-break-before
. Portanto, antes de usar page-break-before
, verifique se você pode usar em seu break-before
lugar.
Um caso de uso comum para isso é aplicá-lo ao seletor #comments
para que um usuário que imprima uma página com comentários possa facilmente escolher imprimir todo o documento, mas parar antes dos comentários de forma limpa.
quebra de página após
A page-break-after
propriedade adiciona uma quebra de página após o elemento ao qual é aplicada.
Nota : esta propriedade está em andamento para ser substituída pela break-after
propriedade mais genérica . Essa nova propriedade também lida com quebras de coluna e região, embora seja sintaticamente compatível com page-break-after
. Portanto, antes de usar page-break-after
, verifique se você pode usar em seu break-after
lugar.
quebra de página dentro
A page-break-inside
propriedade adiciona uma quebra de página dentro do elemento ao qual é aplicada.
Sintaxe
page-break-after : auto | always | avoid | left | right page-break-before : auto | always | avoid | left | right page-break-inside : auto | avoid
Os valores left
e right
para page-break-before
e page-break-after
referem-se a um layout de distribuição (como um livro) onde existem páginas distintas à esquerda e à direita. Eles funcionam assim:
left
força uma ou duas quebras de página após o elemento para que a próxima página seja formatada como página esquerda.right
força uma ou duas quebras de página após o elemento para que a próxima página seja formatada como uma página direita.
Considere always
como uma mistura de ambos. A especificação diz:
Um agente de usuário em conformidade pode interpretar os valores 'esquerda' e 'direita' como 'sempre'.
Exemplo
@media print ( h2 ( page-break-before: always; ) h3, h4 ( page-break-after: avoid; ) pre, blockquote ( page-break-inside: avoid; ) )
Este snippet de código faz 3 coisas:
- ele força uma quebra de página antes de todos os
h2
títulos (talvez as tags h2 em seu documento sejam títulos de capítulo que merecem uma página nova) - evita quebras de página logo após os subtítulos porque parece estranho
- evita quebras de página dentro de
pre
tags e aspas em nível de bloco
Suporte para navegador
cromada | Safári | Raposa de fogo | Ópera | IE | Android | iOS |
---|---|---|---|---|---|---|
Nenhum | Nenhum | Nenhum | 7 + | 4+ | TBD | TBD |
Você pode imprimir de dispositivos móveis, como AirPrint no iOS, mas ainda não testamos muito. Se alguém tiver dados de suporte, avise-nos.