From ed5dc43f160993ff491e2eab17fae1db872ed964 Mon Sep 17 00:00:00 2001 From: Martin Robinson Date: Wed, 11 Sep 2024 10:51:56 -0700 Subject: [PATCH] layout: Reverse space-between alignment properly for absolute children of flex containers (#33406) When aligning with `space-between` the space should be allocated on the `flex-end` side of the container ie it should be mapped to `flex-start` (`start` and reversing if necssary). Signed-off-by: Martin Robinson --- components/layout_2020/flexbox/layout.rs | 2 ++ .../abspos/position-absolute-001.html.ini | 20 ++++--------------- 2 files changed, 6 insertions(+), 16 deletions(-) diff --git a/components/layout_2020/flexbox/layout.rs b/components/layout_2020/flexbox/layout.rs index 11e2717f56a..3a9746c4e9d 100644 --- a/components/layout_2020/flexbox/layout.rs +++ b/components/layout_2020/flexbox/layout.rs @@ -892,6 +892,8 @@ impl FlexContainer { AlignFlags::END | AlignFlags::SAFE }, (AlignFlags::STRETCH, false) => AlignFlags::START | AlignFlags::SAFE, + (AlignFlags::SPACE_BETWEEN, false) => AlignFlags::START | AlignFlags::SAFE, + (AlignFlags::SPACE_BETWEEN, true) => AlignFlags::END | AlignFlags::SAFE, _ => value, }; let cross = make_flex_only_values_directional_for_absolutes( diff --git a/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-001.html.ini b/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-001.html.ini index ff8feac1419..32c35f5b943 100644 --- a/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-001.html.ini +++ b/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-001.html.ini @@ -1,10 +1,4 @@ [position-absolute-001.html] - [.flexbox 39] - expected: FAIL - - [.flexbox 34] - expected: FAIL - [.flexbox 89] expected: FAIL @@ -80,9 +74,6 @@ [.flexbox 118] expected: FAIL - [.flexbox 119] - expected: FAIL - [.flexbox 70] expected: FAIL @@ -185,9 +176,6 @@ [.flexbox 55] expected: FAIL - [.flexbox 24] - expected: FAIL - [.flexbox 120] expected: FAIL @@ -197,9 +185,6 @@ [.flexbox 71] expected: FAIL - [.flexbox 29] - expected: FAIL - [.flexbox 47] expected: FAIL @@ -212,5 +197,8 @@ [.flexbox 76] expected: FAIL - [.flexbox 109] + [.flexbox 69] + expected: FAIL + + [.flexbox 74] expected: FAIL