layout: Let stretch on flex item cross size stretch to the line (#38526)

We were instead stretching to the containing block, which implied that
the behaviors of a `stretch` size and `stretch` alignment weren't
consistent.

As resolved by the CSSWG, the behavior will now be:
 - If the cross size of the line is known, stretch to the line.
 - Otherwise, stretch to the containing block.

See https://github.com/w3c/csswg-drafts/issues/11784

This aligns us with Blink, which has already shipped this new behavior.

Testing: Improves existing WPT and adds a new test.

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
This commit is contained in:
Oriol Brufau 2025-08-08 08:45:30 -07:00 committed by GitHub
parent 9866ca7e59
commit 93c9fc14f1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
16 changed files with 164 additions and 180 deletions

View file

@ -172605,6 +172605,19 @@
{}
]
],
"align-self-016.html": [
"4b2bc6d2efc9f4b1c68ad33961ec97b5a7e7405b",
[
null,
[
[
"/css/reference/ref-filled-green-200px-square.html",
"=="
]
],
{}
]
],
"alignment": {
"flex-align-baseline-column-rtl-direction.html": [
"3be57a2b34bf4c68f0041b874fbfdcecd797a20a",

View file

@ -1,27 +0,0 @@
[keyword-sizes-on-flex-item-001.html]
[.test 57]
expected: FAIL
[.test 58]
expected: FAIL
[.test 59]
expected: FAIL
[.test 60]
expected: FAIL
[.test 61]
expected: FAIL
[.test 62]
expected: FAIL
[.test 63]
expected: FAIL
[.test 64]
expected: FAIL
[.test 65]
expected: FAIL

View file

@ -1,3 +0,0 @@
[flex-line-002.html]
[.stretch 3]
expected: FAIL

View file

@ -1,3 +0,0 @@
[flex-line-003.html]
[.stretch 3]
expected: FAIL

View file

@ -1,3 +0,0 @@
[flex-line-004.html]
[.stretch 3]
expected: FAIL

View file

@ -1,3 +0,0 @@
[flex-line-005.html]
[.stretch 1]
expected: FAIL

View file

@ -4,9 +4,3 @@
[[data-expected-height\] 37]
expected: FAIL
[[data-expected-height\] 21]
expected: FAIL
[[data-expected-height\] 44]
expected: FAIL

View file

@ -4,9 +4,3 @@
[[data-expected-width\] 37]
expected: FAIL
[[data-expected-width\] 21]
expected: FAIL
[[data-expected-width\] 44]
expected: FAIL

View file

@ -10,9 +10,3 @@
[[data-expected-height\]:not([skip-second-pass\]) 45]
expected: FAIL
[[data-expected-height\] 21]
expected: FAIL
[[data-expected-height\]:not([skip-second-pass\]) 44]
expected: FAIL

View file

@ -10,9 +10,3 @@
[[data-expected-width\]:not([skip-second-pass\]) 45]
expected: FAIL
[[data-expected-width\] 21]
expected: FAIL
[[data-expected-width\]:not([skip-second-pass\]) 44]
expected: FAIL

View file

@ -16,9 +16,3 @@
[[data-expected-height\] 46]
expected: FAIL
[[data-expected-height\] 21]
expected: FAIL
[[data-expected-height\] 44]
expected: FAIL

View file

@ -16,9 +16,3 @@
[[data-expected-width\] 46]
expected: FAIL
[[data-expected-width\] 21]
expected: FAIL
[[data-expected-width\] 44]
expected: FAIL