The break-before
CSS property describes the page, column or region break behavior before the generated box. If there is no generated box, the property is ignored.
Each possible break point, that is each element boundary, is under the influence of three properties, the break-after
value of the previous element, the break-before
value of the next element and the break-inside
of the containing element.
To define if a break must be done, the following rules are applied:
always
, left
, right
, page
, column
or region
, it has precedence. If several of the concerned values is such a break, the one of the element that appears the latest in the flow is taken (that is the break-before
value has precedence over the break-after
value, which itself has precedence over the break-inside
value).avoid
, avoid-page
, avoid-region
, avoid-column
, no such break will be applied at that point.Once forced breaks have been applied, soft breaks may be added if needed, but not on element boundaries that resolve in a corresponding avoid value.
Initial value | auto |
---|---|
Applies to | block-level elements |
Inherited | no |
Media | paged |
Computed value | as specified |
Animation type | discrete |
Canonical order | the unique non-ambiguous order defined by the formal grammar |
break-before: auto; break-before: always; break-before: left; break-before: right; break-before: recto; break-before: verso; break-before: page; break-before: column; break-before: region; break-before: avoid; break-before: avoid-page; break-before: avoid-column; break-before: avoid-region;
auto
always
page
, it has been kept to facilitate transition from page-break-before
which is subset of this property.avoid
left
right
page
column
region
recto
verso
avoid-page
avoid-column
avoid-region
auto | avoid | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region
Specification | Status | Comment |
---|---|---|
CSS Fragmentation Module Level 3 The definition of 'break-before' in that specification. | Candidate Recommendation | Adds the recto and verso keywords. Changes the media type of this property from paged to visual . Precises the breaking algorithm with different kinds of breaks. |
CSS Regions Module Level 1 The definition of 'break-before' in that specification. | Working Draft | Extends the property to handle region breaks. Adds the avoid-region and region keywords. |
CSS Multi-column Layout Module The definition of 'break-before' in that specification. | Candidate Recommendation | Initial definition. Extends the CSS 2.1 page-break-before property to handle both page and column breaks. |
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | No support [*] | (Yes)[1] | No support | 10 | 11.10 | No support [*] |
column , avoid-column
| No support [*] | ? | No support | 10 | 11.10 | No support [*] |
recto , verso
| No support | ? | No support | No support | No support | No support |
region , avoid-region
| No support [*] | ? | No support | No support | No support | No support [*] |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | No support [*] | (Yes)[1] | No support | ? | ? | No support [*] |
column , avoid-column
| No support [*] | ? | No support | ? | ? | No support [*] |
recto , verso
| No support | ? | No support | No support | No support | No support |
region , avoid-region
| No support [*] | ? | No support | No support | No support | No support[*] |
[*] WebKit and Blink browsers don't support this property, but some have the non-standard -webkit-column-break-before
and -webkit-region-break-before
with similar parameters as page-break-before
.
[1] Edge also supports the non-standard -webkit-column-break-before
variant.
© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/break-before