diff --git a/css-containment/Overview.bs b/css-containment/Overview.bs index fab7b0717546..c408961dd694 100644 --- a/css-containment/Overview.bs +++ b/css-containment/Overview.bs @@ -138,6 +138,37 @@ Layout Containment 2. The element must be a formatting context. + 3. If a fragmentation context participates in layout containment, + the first element with layout containment + affecting the fragmentation context + must “trap” the remainder of the fragmented flow. + Fragmentation must not continue past the layout containment boundary, + and the last fragmentation container + within the first layout containment boundary + is treated as if it is the last fragmentation container + in its fragmentation context. + + If subsequent fragmentation containers in the fragmentation context + are only generated when more content remains in the fragmented flow, + then they are not generated. + If they would exist regardless, + they remain part of the fragmentation context, + but do not receive any content from the fragmented flow. + + Specifically: + - CSS Regions following the one which traps the content + are still considered part of the region chain + as returned by the {{NamedFlow/getRegions()}} method + of the {{NamedFlow}} interface. + - the {{Region/regionOverset}} attribute of the {{Region}} interface + of the region which traps the content + is set to ''overset'' if the content doesn't fit, + even if it is not the last region in the region chain. + - If the computed value of the 'continue' property + on an element with layout containment + would otherwise have been ''continue/auto'' or ''continue/fragments'', + it must instead compute to ''continue/overflow''. + Possible optimizations that can be enabled by layout containment include (but are not limited to): 1. When the style or contents of a descendant of the containing element is changed,