LibWeb: Don't crash on encountering display: list-item on pseudo element

On any `display: list-item` Node a CSS pseudo element (`::marker`) needs
to be created. This commit allows the ::maker pseudo element to be
nested within other pseudo elements (e. g. ::before or ::after).

This fixes this WPT test:
http://wpt.live/css/CSS2/generated-content/after-content-display-003.xht
This commit is contained in:
Simon König 2024-10-15 23:07:58 +02:00 committed by Sam Atkins
commit 15d2857a01
Notes: github-actions[bot] 2024-10-17 06:43:58 +00:00
3 changed files with 51 additions and 0 deletions

View file

@ -0,0 +1,26 @@
Viewport <#document> at (0,0) content-size 800x600 children: not-inline
BlockContainer <html> at (0,0) content-size 800x600 [BFC] children: not-inline
BlockContainer <body> at (8,8) content-size 784x34 children: not-inline
BlockContainer <div> at (8,8) content-size 784x34 children: not-inline
BlockContainer <(anonymous)> at (8,8) content-size 784x17 children: inline
frag 0 from TextNode start: 0, length: 11, rect: [8,8 83.265625x17] baseline: 13.296875
"Filler text"
TextNode <#text>
ListItemBox <(anonymous)> at (24,25) content-size 768x17 children: inline
frag 0 from TextNode start: 0, length: 11, rect: [24,25 88.703125x17] baseline: 13.296875
"Filler Text"
ListItemMarkerBox <(anonymous)> at (0,25) content-size 12x17 children: not-inline
TextNode <#text>
BlockContainer <(anonymous)> at (8,42) content-size 784x0 children: inline
TextNode <#text>
ViewportPaintable (Viewport<#document>) [0,0 800x600]
PaintableWithLines (BlockContainer<HTML>) [0,0 800x600]
PaintableWithLines (BlockContainer<BODY>) [8,8 784x34]
PaintableWithLines (BlockContainer<DIV>) [8,8 784x34]
PaintableWithLines (BlockContainer(anonymous)) [8,8 784x17]
TextPaintable (TextNode<#text>)
PaintableWithLines (ListItemBox(anonymous)) [24,25 768x17]
MarkerPaintable (ListItemMarkerBox(anonymous)) [0,25 12x17]
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer(anonymous)) [8,42 784x0]