mozilla
Your Search Results

    break-before

    Summary

    The break-before CSS property describes how 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:

    1. If any of the three concerned values is a forced break value, that is 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).
    2. 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.

    Syntax

    Formal syntax: auto | always | avoid | left | right | page | column | avoid-page | avoid-colum
    
    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;
    

    Values

    auto
    Initial value. Allows, meaning neither forbid nor force, any break (either page, column or region) to be be inserted before the principle box.
    always
    Always force page breaks before the principle box. This is a synonym of page, it has been kept to facilitate transition from page-break-before which is subset of this property.
    avoid
    Prevent any break, either page, column or region, to be inserted right before the principle box.
    left
    Force one or two page breaks right before the principle box so that the next page is formatted as a left page.
    right
    Force one or two page breaks right before the principle box so that the next page is formatted as a right page.
    page
    Always force one page break right before the principle box.
    column
    Always force one column break right before the principle box.
    region
    Always force one region break right before the principle box.
    recto
    Force one or two page breaks right before the principle box so that next page is formatted as a recto page, that is a right page in a left-to-right spread or a left page in a right-to-left spread.
    verso
    Force one or two page breaks right before the principle box so that next page is formatted as a verso page, that is a left page in a left-to-right spread or a right page in a right-to-left spread.
    avoid-page
    Avoid any page break right before the principle box.
    avoid-column
    Avoid any column break right before the principle box.
    avoid-region
    Avoid any region break right before the principle box.

    Examples

    Specifications

    Specification Status Comment
    CSS Fragmentation Module Level 3
    The definition of 'break-before' in that specification.
    Working Draft 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 3
    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 specification. Extends the CSS 2.1 page-break-before property to handle both page and column breaks.

    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.

    See also

    Document Tags and Contributors

    Contributors to this page: Sheppy, teoli, jsx, Sebastianz, ethertank, Sandwich, kscarfone
    Last updated by: jsx,