此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。
break-after
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2019年1月.
* Some parts of this feature may have varying levels of support.
break-afterCSS 属性描述在生成的盒子之后的页面,列或区域中断行为(换句话说,如何以及是否中断)。如果没有生成的盒子,则该属性将被忽略。
/* Generic break values */break-after: auto;break-after: avoid;break-after: always;break-after: all;/* Page break values */break-after: avoid-page;break-after: page;break-after: left;break-after: right;break-after: recto;break-after: verso;/* Column break values */break-after: avoid-column;break-after: column;/* Region break values */break-after: avoid-region;break-after: region;/* Global values */break-after: inherit;break-after: initial;break-after: unset;每个潜在的断点(亦即每个元素的边界)都受到三个属性的影响:上一个元素的break-after 值、下一个元素的break-before 值以及当前元素自身的break-inside 值。
以下规则被用于判断中断是否必要:
- 如果上述三个属性中,如果任何一个的值属于“强制中断”值,那么这个属性将被优先应用,此处所称“强制中断”的值为:
always、left、right、page、column和region。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-beforevalue has precedence over thebreak-aftervalue, which itself has precedence over thebreak-insidevalue). - If any of the three concerned values is anavoid 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 correspondingavoid value.
In this article
语法
Thebreak-after property is specified as one of the keyword values from the list below.
属性值
Generic break values
autoAllows, but does not force, any break (page, column, or region) to be inserted right after the principal box.
avoidAvoids any break (page, column, or region) from being inserted right after the principal box.
always实验性Forces a page break right after the principal box. The type of this break is that of the immediately-containing fragmentation context. If we are inside a multicol container then it would force a column break, inside paged media (but not inside a multicol container) a page break.
all实验性Forces a page break right after the principal box. Breaking through all possible fragmentation contexts. So a break inside a multicol container, which was inside a page container would force a column and page break.
Page break values
avoid-pageAvoids any page break right after the principal box.
pageForces a page break right after the principal box.
leftForces one or two page breaks right after the principal box, whichever will make the next page into a left page.
rightForces one or two page breaks right after the principal box, whichever will make the next page into a right page.
recto实验性Forces one or two page breaks right after 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 after 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-columnAvoids any column break right after the principal box.
columnForces a column break right after the principal box.
Region break values
avoid-region实验性Avoids any region break right after the principal box.
region实验性Forces a region break right after the principal box.
形式化语法
break-after =
auto|
avoid|
always|
all|
avoid-page|
page|
left|
right|
recto|
verso|
avoid-column|
column|
avoid-region|
region
Page break aliases
For compatibility reasons, the legacypage-break-after property should be treated by browsers as an alias ofbreak-after. This ensures that sites usingpage-break-after continue to work as designed. A subset of values should be aliased as follows:
| page-break-after | break-after |
|---|---|
auto | auto |
left | left |
right | right |
avoid | avoid |
always | page |
备注:Thealways value ofpage-break-* was implemented by browsers as a page break, and not as a column break. Therefore the aliasing is topage, rather than thealways value in the Level 4 spec.
规范
| Specification |
|---|
| CSS Fragmentation Module Level 3> # break-between> |
| CSS Regions Module Level 1> # region-flow-break> |
| CSS Multi-column Layout Module Level 1> # break-before-break-after-break-inside> |