From a103d85405b48d9a3a417266749a63a46d96f7f4 Mon Sep 17 00:00:00 2001 From: Pu Xingyu Date: Sun, 4 Jun 2023 20:31:54 +0800 Subject: [PATCH 1/2] layout_2020: Allow end margin to collapse with children if height is set to zero Previously, end margin was allowed to collapse only when block size is not set. --- components/layout_2020/flow/mod.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/layout_2020/flow/mod.rs b/components/layout_2020/flow/mod.rs index 22c23253be4..cb88ecebe6a 100644 --- a/components/layout_2020/flow/mod.rs +++ b/components/layout_2020/flow/mod.rs @@ -482,7 +482,7 @@ fn layout_in_flow_non_replaced_block_level( let end_margin_can_collapse_with_children = block_is_same_formatting_context && pbm.padding.block_end == Length::zero() && pbm.border.block_end == Length::zero() && - block_size == LengthOrAuto::Auto && + block_size.auto_is(|| Length::zero()) == Length::zero() && min_box_size.block == Length::zero(); let mut clearance = Length::zero(); From e96c63916becde219a1bfd1f2b6f7f93b49b7e2b Mon Sep 17 00:00:00 2001 From: Pu Xingyu Date: Sun, 4 Jun 2023 22:33:53 +0800 Subject: [PATCH 2/2] Update test expectations --- .../css/CSS2/margin-padding-clear/margin-collapse-016.xht.ini | 2 -- .../css/CSS2/margin-padding-clear/margin-collapse-019.xht.ini | 2 -- .../margin-collapse-through-zero-height-block.html.ini | 2 -- 3 files changed, 6 deletions(-) delete mode 100644 tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/margin-collapse-016.xht.ini delete mode 100644 tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/margin-collapse-019.xht.ini delete mode 100644 tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/margin-collapse-through-zero-height-block.html.ini diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/margin-collapse-016.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/margin-collapse-016.xht.ini deleted file mode 100644 index 6b4b4a53ff0..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/margin-collapse-016.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[margin-collapse-016.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/margin-collapse-019.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/margin-collapse-019.xht.ini deleted file mode 100644 index 90e327ac0d9..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/margin-collapse-019.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[margin-collapse-019.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/margin-collapse-through-zero-height-block.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/margin-collapse-through-zero-height-block.html.ini deleted file mode 100644 index 48d090f286b..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/margin-collapse-through-zero-height-block.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[margin-collapse-through-zero-height-block.html] - expected: FAIL