The break-inside
CSS property defines how page, column, or region breaks should behave inside a generated box. If there is no generated box, the property is ignored.
/* Keyword values */ break-inside: auto; break-inside: avoid; break-inside: avoid-page; break-inside: avoid-column; break-inside: avoid-region; /* Global values */ break-inside: inherit; break-inside: initial; break-inside: unset;
Each possible break point (in other words, each element boundary) is affected by three properties: the break-after
value of the previous element, the break-before
value of the next element, and the break-inside
value of the containing element.
To determine if a break must be done, the following rules are applied:
- If any of the three concerned values is a forced break value (
always
,left
,right
,page
,column
, orregion
), it has precedence. If more than one of them are such a break, the value of the element that appears the latest in the flow is used. Thus, thebreak-before
value has precedence over thebreak-after
value, which in turn has precedence over thebreak-inside
value. - If any of the three concerned values is an avoid break value (
avoid
,avoid-page
,avoid-region
, oravoid-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 |
Syntax
The break-inside
property is specified as one of the keyword values from the list below.
Values
auto
- Allows, but does not force, any break (page, column, or region) to be be inserted within the principle box.
avoid
- Avoids any break (page, column, or region) from being inserted within the principal box.
avoid-page
- Avoids any page break within the principle box.
avoid-column
- Avoids any column break within the principle box.
avoid-region
- Avoids 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. |
Candidate Recommendation | No change. |
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 | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | No | Yes | No | 10 | 11.1 — 12.1 | No |
column and avoid-column | No | No | No | 10 | 11.1 — 12.1 | No |
recto and verso | No | No | No | No | No | No |
region and avoid-region | No | No | No | No | No | No |
Feature | Android webview | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
Basic support | No | ? | Yes | No | ? | ? | No |
column and avoid-column | No | ? | No | No | ? | ? | No |
recto and verso | No | ? | No | No | No | No | No |
region and avoid-region | No | ? | No | No | No | No | No |