Skip to content

Commit 25e3f63

Browse files
committed
[css-grid-2] Handle intrinsic size contribution to flexible tracks instead of ignoring their contents completely. #2177
1 parent 00c78bc commit 25e3f63

File tree

1 file changed

+63
-2
lines changed

1 file changed

+63
-2
lines changed

css-grid-1/Overview.bs

+63-2
Original file line numberDiff line numberDiff line change
@@ -3789,7 +3789,8 @@ Resolve Intrinsic Track Sizes</h3>
37893789

37903790
<li id="algo-single-span-items">
37913791
<strong>Size tracks to fit non-spanning items:</strong>
3792-
For each track with an intrinsic <a>track sizing function</a>,
3792+
For each track with an intrinsic <a>track sizing function</a>
3793+
and not a <a>flexible sizing function</a>,
37933794
consider the items in it with a span of 1:
37943795

37953796
<dl class="switch">
@@ -3847,7 +3848,7 @@ Resolve Intrinsic Track Sizes</h3>
38473848
increase the <a>growth limit</a> to match the <a>base size</a>.
38483849

38493850
<li id="algo-spanning-items">
3850-
<strong>Increase sizes to accommodate spanning items:</strong>
3851+
<strong>Increase sizes to accommodate spanning items crossing content-sized tracks:</strong>
38513852
Next, consider the items with a span of 2
38523853
that do not span a track with a <a>flexible sizing function</a>,
38533854
treating a <a>min track sizing function</a> of ''auto''
@@ -3939,6 +3940,27 @@ Resolve Intrinsic Track Sizes</h3>
39393940

39403941
Repeat incrementally for items with greater spans until all items have been considered.
39413942

3943+
<li id="algo-spanning-flex-items">
3944+
<strong>Increase sizes to accommodate spanning items crossing flexible tracks:</strong>
3945+
Next, repeat the previous step
3946+
instead considering (together, rather than grouped by span size)
3947+
all items
3948+
that <em>do</em> span a track with a <a>flexible sizing function</a>
3949+
while
3950+
<ul>
3951+
<li>
3952+
treating flexible tracks as having
3953+
a <a>max track sizing function</a> equal to their <a>min track sizing function</a>
3954+
<li>
3955+
distributing space <em>only</em> to flexible tracks
3956+
(i.e. treating all other tracks as having a <a>fixed sizing function</a>
3957+
of their current <a>base size</a>)
3958+
<li>
3959+
distributing space to such tracks
3960+
according to the ratios of their <a>flexible sizing functions</a>
3961+
rather than distributing space equally
3962+
</ul>
3963+
39423964
<li id="algo-finite-growth">
39433965
If any track still has an infinite <a>growth limit</a>
39443966
(because, for example, it had no items placed in it),
@@ -4305,6 +4327,45 @@ Major Changes</h4>
43054327
they must be resolved against the inline dimension, as for blocks.
43064328
(<a href="https://github.com/w3c/csswg-drafts/issues/2085">Issue 2085</a>)
43074329

4330+
<li id="change-2017-span-flexible-tracks">
4331+
Adjusted handling of items spanning flexible tracks
4332+
to intrinsic track sizes so that
4333+
they contribute to the size of flexible tracks that have an intrinsic min
4334+
rather than being ignored.
4335+
(<a href="https://github.com/w3c/csswg-drafts/issues/2177">Issue 2177</a>)
4336+
<blockquote>
4337+
<ul>
4338+
<li>
4339+
<strong>Size tracks to fit non-spanning items:</strong>
4340+
For each track with an intrinsic <a>track sizing function</a>
4341+
<ins>and not a <a>flexible sizing function</a></ins>,
4342+
consider the items in it with a span of 1:
4343+
<li>
4344+
&hellip;
4345+
<li>
4346+
<ins><strong>Increase sizes to accommodate spanning items crossing flexible tracks:</strong>
4347+
Next, repeat the previous step
4348+
instead considering (together, rather than grouped by span size)
4349+
all items
4350+
that <em>do</em> span a track with a <a>flexible sizing function</a>
4351+
while
4352+
<ul>
4353+
<li>
4354+
treating flexible tracks as having
4355+
a <a>max track sizing function</a> equal to their <a>min track sizing function</a>
4356+
<li>
4357+
distributing space <em>only</em> to flexible tracks
4358+
(i.e. treating all other tracks as having a <a>fixed sizing function</a>
4359+
of their current <a>base size</a>)
4360+
<li>
4361+
distributing space to such tracks
4362+
according to the ratios of their <a>flexible sizing functions</a>
4363+
rather than distributing space equally
4364+
</ul>
4365+
</ins>
4366+
</ul>
4367+
</blockquote>
4368+
43084369
<li id="change-2017-repeat-serialization">
43094370
Require the used value of a track listing
43104371
to be serialized without using ''repeat()'' notation.

0 commit comments

Comments
 (0)