The break-inside CSS property describes how the page, column or region break inside 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-inside: auto; break-inside: avoid; break-inside: avoid-page; break-inside: avoid-column; break-inside: avoid-region;
autoavoid-pageavoid-columnavoid-region
auto | avoid | avoid-page | avoid-column | avoid-region
| Specification | Status | Comment |
|---|---|---|
| CSS Fragmentation Module Level 3 The definition of 'break-inside' in that specification. | Candidate Recommendation | |
| CSS Regions Module Level 1 The definition of 'break-inside' in that specification. | Working Draft | Extends the property to handle region breaks. |
| CSS Multi-column Layout Module The definition of 'break-inside' in that specification. | Candidate Recommendation | Initial definition |
| 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-inside 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-inside