Our volunteers haven't translated this article into عربي yet. Join us and help get the job done!
Summary
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:
- If any of the three concerned values is a forced break value, that is
always
,left
,right
,page
,column
orregion
, 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 thebreak-before
value has precedence over thebreak-after
value, which itself has precedence over thebreak-inside
value). - If any of the three concerned values is an avoid break value, that is
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 |
Animatable | no |
Canonical order | the unique non-ambiguous order defined by the formal grammar |
Syntax
break-inside: auto; break-inside: avoid; break-inside: avoid-page; break-inside: avoid-column; break-inside: avoid-region;
Values
auto
- Allows, meaning neither forbid nor force, any break (either page, column or region) to be be inserted within the principle box.
avoid-page
- Avoid any page break within the principle box.
avoid-column
- Avoid any column break within the principle box.
avoid-region
- Avoid any region break within the principle box.
Formal syntax
auto | avoid | avoid-page | avoid-column | avoid-region
Specifications
Specification | Status | Comment |
---|---|---|
CSS Fragmentation Module Level 3 The definition of 'break-inside' in that specification. |
Working Draft | |
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 |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | Not supported [*] | Not supported | 10 | 11.10 | Not supported [*] |
column , avoid-column |
Not supported [*] | Not supported | 10 | 11.10 | Not supported [*] |
recto , verso |
Not supported | Not supported | Not supported | Not supported | Not supported |
region , avoid-region |
Not supported [*] | Not supported | Not supported | Not supported | Not supported [*] |
Feature | Android | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Basic support | Not supported [*] | Not supported | ? | ? | Not supported [*] |
column , avoid-column |
Not supported [*] | Not supported | ? | ? | Not supported [*] |
recto , verso |
Not supported | Not supported | Not supported | Not supported | Not supported |
region , avoid-region |
Not supported [*] | Not supported | Not supported | Not supported | Not supported[*] |
[*] 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
.