diff options
author | TIN TUN AUNG <62133983+rayguo17@users.noreply.github.com> | 2025-02-03 16:27:55 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-03 08:27:55 +0000 |
commit | 2030b7affd69ed1e0b5aa90acbae097fbd626a5b (patch) | |
tree | a7906dcdc1c302da85d44d73d41e15769da9d14a | |
parent | 6a2e37183c1995aa7c4bc31dfd8e871f28dcbae7 (diff) | |
download | servo-2030b7affd69ed1e0b5aa90acbae097fbd626a5b.tar.gz servo-2030b7affd69ed1e0b5aa90acbae097fbd626a5b.zip |
layout: align-content with default value normal should behave as strech in flex container (#35178)
Signed-off-by: rayguo17 <rayguo17@gmail.com>
23 files changed, 8 insertions, 137 deletions
diff --git a/components/layout_2020/flexbox/layout.rs b/components/layout_2020/flexbox/layout.rs index 53595acd818..6aa8adb3b69 100644 --- a/components/layout_2020/flexbox/layout.rs +++ b/components/layout_2020/flexbox/layout.rs @@ -784,12 +784,17 @@ impl FlexContainer { // the resolution of https://github.com/w3c/csswg-drafts/issues/10154 let num_lines = initial_line_layouts.len(); let resolved_align_content: AlignFlags = { + // Computed value from the style system let align_content_style = flex_context.config.align_content.0.primary(); - - // Inital values from the style system - let mut resolved_align_content = align_content_style.value(); let mut is_safe = align_content_style.flags() == AlignFlags::SAFE; + // From https://drafts.csswg.org/css-align/#distribution-flex + // > `normal` behaves as `stretch`. + let mut resolved_align_content = match align_content_style.value() { + AlignFlags::NORMAL => AlignFlags::STRETCH, + align_content => align_content, + }; + // From https://drafts.csswg.org/css-flexbox/#algo-line-align: // > Some alignments can only be fulfilled in certain situations or are // > limited in how much space they can consume; for example, space-between diff --git a/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-002.html.ini b/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-002.html.ini deleted file mode 100644 index a5fb3f0a0d3..00000000000 --- a/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-002.html.ini +++ /dev/null @@ -1,9 +0,0 @@ -[position-absolute-002.html] - [.flexbox 5] - expected: FAIL - - [.flexbox 8] - expected: FAIL - - [.flexbox 9] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/align-content-horiz-001a.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-horiz-001a.html.ini deleted file mode 100644 index 3bdab975cfe..00000000000 --- a/tests/wpt/meta/css/css-flexbox/align-content-horiz-001a.html.ini +++ /dev/null @@ -1,15 +0,0 @@ -[align-content-horiz-001a.html] - [.flexbox div 4] - expected: FAIL - - [.flexbox div 7] - expected: FAIL - - [.flexbox div 6] - expected: FAIL - - [.flexbox div 3] - expected: FAIL - - [.flexbox div 8] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/align-content-horiz-001b.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-horiz-001b.html.ini deleted file mode 100644 index 5521570e680..00000000000 --- a/tests/wpt/meta/css/css-flexbox/align-content-horiz-001b.html.ini +++ /dev/null @@ -1,15 +0,0 @@ -[align-content-horiz-001b.html] - [.flexbox div 4] - expected: FAIL - - [.flexbox div 7] - expected: FAIL - - [.flexbox div 6] - expected: FAIL - - [.flexbox div 3] - expected: FAIL - - [.flexbox div 8] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/align-content-horiz-002.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-horiz-002.html.ini deleted file mode 100644 index 9a187b56166..00000000000 --- a/tests/wpt/meta/css/css-flexbox/align-content-horiz-002.html.ini +++ /dev/null @@ -1,15 +0,0 @@ -[align-content-horiz-002.html] - [.flexbox div 4] - expected: FAIL - - [.flexbox div 7] - expected: FAIL - - [.flexbox div 6] - expected: FAIL - - [.flexbox div 3] - expected: FAIL - - [.flexbox div 8] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/align-content-vert-001a.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-vert-001a.html.ini deleted file mode 100644 index 007e3a4670f..00000000000 --- a/tests/wpt/meta/css/css-flexbox/align-content-vert-001a.html.ini +++ /dev/null @@ -1,15 +0,0 @@ -[align-content-vert-001a.html] - [.flexbox div 4] - expected: FAIL - - [.flexbox div 7] - expected: FAIL - - [.flexbox div 6] - expected: FAIL - - [.flexbox div 3] - expected: FAIL - - [.flexbox div 8] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/align-content-vert-001b.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-vert-001b.html.ini deleted file mode 100644 index 42fc5fef67a..00000000000 --- a/tests/wpt/meta/css/css-flexbox/align-content-vert-001b.html.ini +++ /dev/null @@ -1,15 +0,0 @@ -[align-content-vert-001b.html] - [.flexbox div 4] - expected: FAIL - - [.flexbox div 7] - expected: FAIL - - [.flexbox div 6] - expected: FAIL - - [.flexbox div 3] - expected: FAIL - - [.flexbox div 8] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/align-content-vert-002.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-vert-002.html.ini deleted file mode 100644 index 3090a6b25a7..00000000000 --- a/tests/wpt/meta/css/css-flexbox/align-content-vert-002.html.ini +++ /dev/null @@ -1,15 +0,0 @@ -[align-content-vert-002.html] - [.flexbox div 4] - expected: FAIL - - [.flexbox div 7] - expected: FAIL - - [.flexbox div 6] - expected: FAIL - - [.flexbox div 3] - expected: FAIL - - [.flexbox div 8] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/align-content-wrap-003.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-wrap-003.html.ini index 0a06bb106d9..c513efe3097 100644 --- a/tests/wpt/meta/css/css-flexbox/align-content-wrap-003.html.ini +++ b/tests/wpt/meta/css/css-flexbox/align-content-wrap-003.html.ini @@ -1,7 +1,4 @@ [align-content-wrap-003.html] - [.flexbox 1] - expected: FAIL - [.flexbox 33] expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/columns-height-set-via-top-bottom.html.ini b/tests/wpt/meta/css/css-flexbox/columns-height-set-via-top-bottom.html.ini deleted file mode 100644 index 3d86d2f26c5..00000000000 --- a/tests/wpt/meta/css/css-flexbox/columns-height-set-via-top-bottom.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[columns-height-set-via-top-bottom.html] - [.flexbox 2] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/dynamic-change-simplified-layout.html.ini b/tests/wpt/meta/css/css-flexbox/dynamic-change-simplified-layout.html.ini deleted file mode 100644 index 821870fdc77..00000000000 --- a/tests/wpt/meta/css/css-flexbox/dynamic-change-simplified-layout.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[dynamic-change-simplified-layout.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-reverse-column-reverse.html.ini b/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-reverse-column-reverse.html.ini deleted file mode 100644 index 9f811cea638..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-reverse-column-reverse.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[multi-line-wrap-reverse-column-reverse.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-with-column-reverse.html.ini b/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-with-column-reverse.html.ini deleted file mode 100644 index 23593e222b2..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-with-column-reverse.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[multi-line-wrap-with-column-reverse.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-align-self-stretch-vert-002.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-align-self-stretch-vert-002.html.ini deleted file mode 100644 index dab9d6e1cf9..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox-align-self-stretch-vert-002.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[flexbox-align-self-stretch-vert-002.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001a.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001a.html.ini deleted file mode 100644 index 88b0e3f1aa9..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001a.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[flexbox-break-request-horiz-001a.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001b.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001b.html.ini deleted file mode 100644 index cfecd9e45e0..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001b.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[flexbox-break-request-horiz-001b.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001a.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001a.html.ini deleted file mode 100644 index c93bf834730..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001a.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[flexbox-break-request-vert-001a.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001b.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001b.html.ini deleted file mode 100644 index 3e447e342d1..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001b.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[flexbox-break-request-vert-001b.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-001.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-001.html.ini deleted file mode 100644 index 83d134abded..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-001.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[flexbox-flex-wrap-horiz-001.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-002.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-002.html.ini deleted file mode 100644 index 836251d7611..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-002.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[flexbox-flex-wrap-horiz-002.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-vert-001.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-vert-001.html.ini deleted file mode 100644 index 945a8e0c072..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-vert-001.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[flexbox-flex-wrap-vert-001.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-lines-must-be-stretched-by-default.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-lines-must-be-stretched-by-default.html.ini deleted file mode 100644 index c0d0eaba014..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox-lines-must-be-stretched-by-default.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[flexbox-lines-must-be-stretched-by-default.html] - [.flex-container 1] - expected: FAIL diff --git a/tests/wpt/meta/css/css-flexbox/flexbox_width-wrapping-column.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox_width-wrapping-column.html.ini deleted file mode 100644 index 48c81ebde76..00000000000 --- a/tests/wpt/meta/css/css-flexbox/flexbox_width-wrapping-column.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[flexbox_width-wrapping-column.html] - [.flexbox 1] - expected: FAIL - |