瀏覽代碼

LibWeb: Don't try to layout list-item markers in BFC

Marker boxes are laid out by the corresponding ListItemBox. BFC should
just leave them alone. This fixes a jiggling issue on welcome.html :^)
Andreas Kling 3 年之前
父節點
當前提交
49916f494d
共有 1 個文件被更改,包括 5 次插入0 次删除
  1. 5 0
      Userland/Libraries/LibWeb/Layout/BlockFormattingContext.cpp

+ 5 - 0
Userland/Libraries/LibWeb/Layout/BlockFormattingContext.cpp

@@ -12,6 +12,7 @@
 #include <LibWeb/Layout/InitialContainingBlock.h>
 #include <LibWeb/Layout/InlineFormattingContext.h>
 #include <LibWeb/Layout/ListItemBox.h>
+#include <LibWeb/Layout/ListItemMarkerBox.h>
 #include <LibWeb/Layout/ReplacedBox.h>
 #include <LibWeb/Page/BrowsingContext.h>
 
@@ -387,6 +388,10 @@ void BlockFormattingContext::layout_block_level_children(BlockContainer& block_c
         if (child_box.is_absolutely_positioned())
             return IterationDecision::Continue;
 
+        // NOTE: ListItemMarkerBoxes are placed by their corresponding ListItemBox.
+        if (is<ListItemMarkerBox>(child_box))
+            return IterationDecision::Continue;
+
         if (child_box.is_floating()) {
             layout_floating_child(child_box, block_container);
             return IterationDecision::Continue;