-
Notifications
You must be signed in to change notification settings - Fork 719
[css-grid] Growth limits not increased with min-content contributions of spanning items #4790
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Note that intrinsic max track sizing functions can only be |
This was an error introduced in f48098c and it needs to be reverted. |
Even if this was an unintentional error, it has been implemented by Chromium, WebKit, Firefox, and old Edge. |
@Loirooriol You're right. Here's a live testcase. The specified behavior is absurd, though. I'm surprised no one else noticed it's wrong. :( Agenda+ to confirm the correction. |
The CSS Working Group just discussed RESOLVED: Accept the edits made to the ED re minimum vs min-content (and add WPT tests) The full IRC log of that discussion |
This seems covered by WPT css-grid/layout-algorithm/grid-intrinsic-track-sizes-001.html |
By mistake the specification used to say that, for items spanning multiple tracks, the growth limits of the tracks with an intrinsic max track sizing function should grow to accommodate the minimum contribution of the item. But this was a mistake, because an intrinsic max track sizing function can only be min-content or max-content. So instead of distributing the minimum contribution, it should be the min-content contribution. The spec has been fixed and there is a CSSWG resolution in w3c/csswg-drafts#4790 This patch fixes the problem by reverting r424527. The change is likely web compatible, since it only affects a rare edge case with 'minmax()' where the min sizing function is 'auto' or a fixed value smaller than the min-content contribution, the max sizing function is 'min-content', and an item whose minimum contribution is forced to be different than the min-content contribution, and spans multiple tracks. Bug: 1122084 TEST=external/wpt/css/css-grid/layout-algorithm/grid-intrinsic-track-sizes-001.html TEST=fast/css-grid-layout/grid-intrinsic-maximums.html Change-Id: I1efd6e48b55fc71f37f8303c731bfbf601ca4c70 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2377499 Reviewed-by: Manuel RegoCommit-Queue: Oriol Brufau Cr-Commit-Position: refs/heads/master@{#803871}
…resolution. r=mats By mistake the specification used to say that, for items spanning multiple tracks, the growth limits of the tracks with an intrinsic max track sizing function should grow to accommodate the minimum contribution of the item. But this was a mistake, because an intrinsic max track sizing function can only be min-content or max-content. So instead of distributing the minimum contribution, it should be the min-content contribution. The spec has been fixed and there is a CSSWG resolution in w3c/csswg-drafts#4790 This patch fixes the problem by reverting 2b923d48ea7e. The change is likely web compatible, since it only affects a rare edge case with 'minmax()' where the min sizing function is 'auto' or a fixed value smaller than the min-content contribution, the max sizing function is 'min-content', and an item whose minimum contribution is forced to be smaller than the min-content contribution, and spans multiple tracks. Differential Revision: https://phabricator.services.mozilla.com/D89145
…resolution. r=mats By mistake the specification used to say that, for items spanning multiple tracks, the growth limits of the tracks with an intrinsic max track sizing function should grow to accommodate the minimum contribution of the item. But this was a mistake, because an intrinsic max track sizing function can only be min-content or max-content. So instead of distributing the minimum contribution, it should be the min-content contribution. The spec has been fixed and there is a CSSWG resolution in w3c/csswg-drafts#4790 This patch fixes the problem by reverting 2b923d48ea7e. The change is likely web compatible, since it only affects a rare edge case with 'minmax()' where the min sizing function is 'auto' or a fixed value smaller than the min-content contribution, the max sizing function is 'min-content', and an item whose minimum contribution is forced to be smaller than the min-content contribution, and spans multiple tracks. Differential Revision: https://phabricator.services.mozilla.com/D89145
…resolution. r=mats By mistake the specification used to say that, for items spanning multiple tracks, the growth limits of the tracks with an intrinsic max track sizing function should grow to accommodate the minimum contribution of the item. But this was a mistake, because an intrinsic max track sizing function can only be min-content or max-content. So instead of distributing the minimum contribution, it should be the min-content contribution. The spec has been fixed and there is a CSSWG resolution in w3c/csswg-drafts#4790 This patch fixes the problem by reverting 2b923d48ea7e. The change is likely web compatible, since it only affects a rare edge case with 'minmax()' where the min sizing function is 'auto' or a fixed value smaller than the min-content contribution, the max sizing function is 'min-content', and an item whose minimum contribution is forced to be smaller than the min-content contribution, and spans multiple tracks. Differential Revision: https://phabricator.services.mozilla.com/D89145 UltraBlame original commit: c8322fb7a54aed137bb6db2f5a62087113dd721c
…resolution. r=mats By mistake the specification used to say that, for items spanning multiple tracks, the growth limits of the tracks with an intrinsic max track sizing function should grow to accommodate the minimum contribution of the item. But this was a mistake, because an intrinsic max track sizing function can only be min-content or max-content. So instead of distributing the minimum contribution, it should be the min-content contribution. The spec has been fixed and there is a CSSWG resolution in w3c/csswg-drafts#4790 This patch fixes the problem by reverting 2b923d48ea7e. The change is likely web compatible, since it only affects a rare edge case with 'minmax()' where the min sizing function is 'auto' or a fixed value smaller than the min-content contribution, the max sizing function is 'min-content', and an item whose minimum contribution is forced to be smaller than the min-content contribution, and spans multiple tracks. Differential Revision: https://phabricator.services.mozilla.com/D89145 UltraBlame original commit: c8322fb7a54aed137bb6db2f5a62087113dd721c
…resolution. r=mats By mistake the specification used to say that, for items spanning multiple tracks, the growth limits of the tracks with an intrinsic max track sizing function should grow to accommodate the minimum contribution of the item. But this was a mistake, because an intrinsic max track sizing function can only be min-content or max-content. So instead of distributing the minimum contribution, it should be the min-content contribution. The spec has been fixed and there is a CSSWG resolution in w3c/csswg-drafts#4790 This patch fixes the problem by reverting 2b923d48ea7e. The change is likely web compatible, since it only affects a rare edge case with 'minmax()' where the min sizing function is 'auto' or a fixed value smaller than the min-content contribution, the max sizing function is 'min-content', and an item whose minimum contribution is forced to be smaller than the min-content contribution, and spans multiple tracks. Differential Revision: https://phabricator.services.mozilla.com/D89145 UltraBlame original commit: c8322fb7a54aed137bb6db2f5a62087113dd721c
…resolution. r=mats By mistake the specification used to say that, for items spanning multiple tracks, the growth limits of the tracks with an intrinsic max track sizing function should grow to accommodate the minimum contribution of the item. But this was a mistake, because an intrinsic max track sizing function can only be min-content or max-content. So instead of distributing the minimum contribution, it should be the min-content contribution. The spec has been fixed and there is a CSSWG resolution in w3c/csswg-drafts#4790 This patch fixes the problem by reverting 2b923d48ea7e. The change is likely web compatible, since it only affects a rare edge case with 'minmax()' where the min sizing function is 'auto' or a fixed value smaller than the min-content contribution, the max sizing function is 'min-content', and an item whose minimum contribution is forced to be smaller than the min-content contribution, and spans multiple tracks. Differential Revision: https://phabricator.services.mozilla.com/D89145
https://bugs.webkit.org/show_bug.cgi?id=216142 Reviewed by Darin Adler. LayoutTests/imported/w3c: Import WPT test. * web-platform-tests/css/css-grid/layout-algorithm/grid-intrinsic-track-sizes-001-expected.txt: Added. * web-platform-tests/css/css-grid/layout-algorithm/grid-intrinsic-track-sizes-001.html: Added. * web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log: Source/WebCore: By mistake the specification used to say that, for items spanning multiple tracks, the growth limits of the tracks with an intrinsic max track sizing function should grow to accommodate the minimum contribution of the item. But this was a mistake, because an intrinsic max track sizing function can only be min-content or max-content. So instead of distributing the minimum contribution, it should be the min-content contribution. The spec has been fixed and there is a CSSWG resolution in w3c/csswg-drafts#4790 This patch fixes the problem by reverting r207290. The change is likely web compatible, since it only affects a rare edge case with 'minmax()' where the min sizing function is 'auto' or a fixed value smaller than the min-content contribution, the max sizing function is 'min-content', and an item whose minimum contribution is forced to be different than the min-content contribution, and spans multiple tracks. This is a port of https://crrev.com/803871 from Chromium. Tests: fast/css-grid-layout/grid-intrinsic-maximums.html imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-intrinsic-track-sizes-001.html * rendering/GridTrackSizingAlgorithm.cpp: (WebCore::GridTrackSizingAlgorithm::itemSizeForTrackSizeComputationPhase const): LayoutTests: Update test expectations. Some are wrong due to bug 216144. * fast/css-grid-layout/grid-intrinsic-maximums-expected.html: Canonical link: https://commits.webkit.org/229044@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@266675 268f45cc-cd09-0410-ab3c-d52691b4dbfc
…resolution. r=mats By mistake the specification used to say that, for items spanning multiple tracks, the growth limits of the tracks with an intrinsic max track sizing function should grow to accommodate the minimum contribution of the item. But this was a mistake, because an intrinsic max track sizing function can only be min-content or max-content. So instead of distributing the minimum contribution, it should be the min-content contribution. The spec has been fixed and there is a CSSWG resolution in w3c/csswg-drafts#4790 This patch fixes the problem by reverting 2b923d48ea7e. The change is likely web compatible, since it only affects a rare edge case with 'minmax()' where the min sizing function is 'auto' or a fixed value smaller than the min-content contribution, the max sizing function is 'min-content', and an item whose minimum contribution is forced to be smaller than the min-content contribution, and spans multiple tracks. Differential Revision: https://phabricator.services.mozilla.com/D89145
Uh oh!
There was an error while loading. Please reload this page.
If you have a non-spanning item, https://drafts.csswg.org/css-grid/#algo-single-span-items
But for spanning items, https://drafts.csswg.org/css-grid/#algo-spanning-items
Why do we distribute the min-content contribution in the former case, but only the minimum contribution in the latter?
looks like
Thus violating
The text was updated successfully, but these errors were encountered: