Skip to content

Commit aefbaa9

Browse files
author
Rossen Atanassov
committed
[css-grid] Adding the grid fragmentation section.
--HG-- extra : rebase_source : 5675781616b32ff38a19e398c02874c77a2a9585
1 parent 0ca5022 commit aefbaa9

2 files changed

Lines changed: 253 additions & 141 deletions

File tree

css-grid/Overview.bs

Lines changed: 46 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3023,8 +3023,52 @@ Find the Size of an ''fr''</h4>
30233023
<h2 id='pagination'>
30243024
Fragmenting Grid Layout</h2>
30253025

3026-
<p class='issue'>
3027-
Fill this in.
3026+
Grid containers break across fragment containers (fragmentainers) [[!CSS3-BREAK]] between
3027+
grid rows. The break-* properties do not apply to grid areas. When fragmentating grid containers
3028+
the goal is to minimize the number of grid areas that get fragmented due to their grid row
3029+
being fragmented.
3030+
3031+
<h3 id="fragmentation-alg">
3032+
Sample Fragmentation Algorithm</h3>
3033+
3034+
<ol>
3035+
<li>
3036+
Layout the grid following the <a section href="#layout-algorithm"></a> by using the
3037+
fragmentainer box width and assume unlimited height. During this step all 'grid-row'
3038+
''auto'' and ''fr'' values must be resolved.
3039+
3040+
<li>
3041+
Layout the grid container using the values resolved in the previous step.
3042+
3043+
<li>
3044+
If a grid row extends past the current fragment and it is not the first grid row in
3045+
this fragment; push it to the next fragment. Do this even if the grid row has no items.
3046+
3047+
<li>
3048+
If a grid area dimensions change due to fragmentation (do not include items that
3049+
span rows in this decision), increase the grid row as necessary for rows that either:
3050+
<ul>
3051+
<li>
3052+
have a content min track sizing function.
3053+
3054+
<li>
3055+
are in a grid that does not have an explicit height and the grid row is flexible.
3056+
</ul>
3057+
3058+
<li>
3059+
If the grid height is ''auto'', the height of the grid should be the sum of the final
3060+
row sizes.
3061+
3062+
<li>
3063+
If a grid area overflows the grid container due to margins being collapsed during
3064+
fragmentation, extend the grid container to contain this grid area (this step is
3065+
necessary in order to avoid circular layout dependencies due to fragmentation).
3066+
</ol>
3067+
3068+
<p class="note">
3069+
If the grid’s height is specified, steps three and four may cause the grid rows to
3070+
overflow the grid.
3071+
</p>
30283072

30293073
<h2 class="no-num" id="acks">
30303074
Acknowledgements</h2>

0 commit comments

Comments
 (0)