W3cubDocs

/CSS

break-before

Thebreak-before CSS property defines how page, column, or region breaks should behave before a generated box. If there is no generated box, the property is ignored.

/* Generic break values */
break-before: auto;
break-before: avoid;

/* Page break values */
break-before: avoid-page;
break-before: page;
break-before: always;
break-before: left;
break-before: right;
break-before: recto;
break-before: verso;

/* Column break values */
break-before: avoid-column;
break-before: column;

/* Region break values */
break-before: avoid-region;
break-before: region;

/* Global values */
break-before: inherit;
break-before: initial;
break-before: 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:

  1. If any of the three concerned values is a forced break value (always, left, right, page, column, or region), it has precedence. If more than one of them are such a break, the one of the element that appears the latest in the flow is taken (i.e., the break-before value has precedence over the break-after value, which itself has precedence over the break-inside value).
  2. If any of the three concerned values is an avoid break value (avoid, avoid-page, avoid-region, or 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

Syntax

The break-before property is specified as one of the keyword values from the list below.

Values

General break values

auto
Allows, but does not force, any break (page, column, or region) to be inserted right before the principal box.
avoid
Avoids any break (page, column, or region) from being inserted right before the principal box.

Page break values

avoid-page
Avoids any page break right before the principal box.
page
Forces a page break right before the principal box.
always
Forces a page break right before the principal box. (This is an alias of page, and has been kept to facilitate the transition from page-break-after, which is a subset of this property.)
left
Forces one or two page breaks right before the principal box, whichever will make the next page into a left page.
right
Forces one or two page breaks right before the principal box, whichever will make the next page into a right page.
recto
Forces one or two page breaks right before the principal box, whichever will make the next page into a recto page. (A recto page is a right page in a left-to-right spread or a left page in a right-to-left spread.)
verso
Forces one or two page breaks right before the principal box, whichever will make the next page into a verso page. (A verso page is a left page in a left-to-right spread or a left right in a right-to-left spread.)

Column break values

avoid-column
Avoids any column break right before the principal box.
column
Forces a column break right before the principal box.

Region break values

avoid-region
Avoids any region break right before the principal box.
region
Forces a region break right before the principal box.

Formal syntax

auto | avoid | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region

Specifications

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. Defines 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.

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

© 2005–2018 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