mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-28 02:27:19 +02:00
Compute inline-block baselines by traversing into nested block children to find the last in-flow line box, using correct offsets relative to the margin box edge. Also ensure inline-flex and inline-grid containers always derive their baseline from content (per CSS Align), and add special handling for <input> elements which have `overflow: clip` in the UA stylesheet but should still align adjacent text with their internal content.
86 lines
5.6 KiB
Plaintext
86 lines
5.6 KiB
Plaintext
Viewport <#document> at [0,0] [0+0+0 800 0+0+0] [0+0+0 600 0+0+0] [BFC] children: not-inline
|
|
BlockContainer <html> at [0,0] [0+0+0 800 0+0+0] [0+0+0 88 0+0+0] [BFC] children: not-inline
|
|
BlockContainer <body> at [8,8] [8+0+0 784 0+0+8] [8+0+0 72 0+0+8] children: inline
|
|
frag 0 from BlockContainer start: 0, length: 0, rect: [9,29 200x20] baseline: 15.796875
|
|
frag 1 from BlockContainer start: 0, length: 0, rect: [243.1875,11 160x30] baseline: 36
|
|
frag 2 from BlockContainer start: 0, length: 0, rect: [437.375,29 200x20] baseline: 15.796875
|
|
frag 3 from TextNode start: 0, length: 1, rect: [638.375,30 8x18] baseline: 13.796875
|
|
" "
|
|
frag 4 from BlockContainer start: 0, length: 0, rect: [11,47 160x30] baseline: 36
|
|
BlockContainer <input> at [9,29] inline-block [0+1+0 200 0+1+0] [0+1+0 20 0+1+0] [BFC] children: not-inline
|
|
Box <div> at [11,30] flex-container(row) [0+0+2 196 2+0+0] [0+0+1 18 1+0+0] [FFC] children: not-inline
|
|
BlockContainer <div> at [11,30] flex-item [0+0+0 196 0+0+0] [0+0+0 18 0+0+0] [BFC] children: inline
|
|
frag 0 from TextNode start: 0, length: 0, rect: [11,30 0x18] baseline: 13.796875
|
|
TextNode <#text> (not painted)
|
|
InlineNode <span> at [210,30] [0+0+0 30.1875 0+0+0] [0+0+0 18 0+0+0]
|
|
frag 0 from TextNode start: 0, length: 3, rect: [210,30 30.1875x18] baseline: 13.796875
|
|
"boo"
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <textarea> at [243.1875,11] inline-block [0+1+2 160 2+1+0] [0+1+2 30 2+1+0] [BFC] children: not-inline
|
|
BlockContainer <div> at [243.1875,11] [0+0+0 160 0+0+0] [0+0+0 15 0+0+0] children: not-inline
|
|
BlockContainer <div> at [243.1875,11] [0+0+0 160 0+0+0] [0+0+0 15 0+0+0] children: inline
|
|
frag 0 from TextNode start: 0, length: 0, rect: [243.1875,11 0x15] baseline: 11.390625
|
|
TextNode <#text> (not painted)
|
|
InlineNode <span> at [406.1875,30] [0+0+0 30.1875 0+0+0] [0+0+0 18 0+0+0]
|
|
frag 0 from TextNode start: 0, length: 3, rect: [406.1875,30 30.1875x18] baseline: 13.796875
|
|
"boo"
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <input> at [437.375,29] inline-block [0+1+0 200 0+1+0] [0+1+0 20 0+1+0] [BFC] children: not-inline
|
|
Box <div> at [439.375,30] flex-container(row) [0+0+2 196 2+0+0] [0+0+1 18 1+0+0] [FFC] children: not-inline
|
|
BlockContainer <div> at [439.375,30] flex-item [0+0+0 0 0+0+0] [0+0+0 18 0+0+0] [BFC] children: inline
|
|
frag 0 from TextNode start: 0, length: 0, rect: [439.375,30 0x18] baseline: 13.796875
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <div> at [439.375,30] flex-item [0+0+0 196 0+0+0] [0+0+0 18 0+0+0] [BFC] children: inline
|
|
frag 0 from TextNode start: 0, length: 5, rect: [439.375,30 36.84375x18] baseline: 13.796875
|
|
"hello"
|
|
TextNode <#text> (not painted)
|
|
TextNode <#text> (not painted)
|
|
InlineNode <span> at [646.375,30] [0+0+0 30.1875 0+0+0] [0+0+0 18 0+0+0]
|
|
frag 0 from TextNode start: 0, length: 3, rect: [646.375,30 30.1875x18] baseline: 13.796875
|
|
"boo"
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <textarea> at [11,47] inline-block [0+1+2 160 2+1+0] [0+1+2 30 2+1+0] [BFC] children: not-inline
|
|
BlockContainer <div> at [11,47] [0+0+0 160 0+0+0] [0+0+0 15 0+0+0] children: inline
|
|
InlineNode <div> at [11,47] [0+0+0 0 0+0+0] [0+0+0 15 0+0+0]
|
|
frag 0 from TextNode start: 0, length: 0, rect: [11,47 0x15] baseline: 11.390625
|
|
TextNode <#text> (not painted)
|
|
InlineNode <div> at [11,47] [0+0+0 29.921875 0+0+0] [0+0+0 15 0+0+0]
|
|
frag 0 from TextNode start: 0, length: 5, rect: [11,47 29.921875x15] baseline: 11.390625
|
|
"hello"
|
|
TextNode <#text> (not painted)
|
|
TextNode <#text> (not painted)
|
|
|
|
ViewportPaintable (Viewport<#document>) [0,0 800x600]
|
|
PaintableWithLines (BlockContainer<HTML>) [0,0 800x88]
|
|
PaintableWithLines (BlockContainer<BODY>) [8,8 784x72]
|
|
PaintableWithLines (BlockContainer<INPUT>) [8,28 202x22]
|
|
PaintableBox (Box<DIV>) [9,29 200x20]
|
|
PaintableWithLines (BlockContainer<DIV>) [11,30 196x18]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (InlineNode<SPAN>) [210,30 30.1875x18]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer<TEXTAREA>) [240.1875,8 166x36]
|
|
PaintableWithLines (BlockContainer<DIV>) [243.1875,11 160x15]
|
|
PaintableWithLines (BlockContainer<DIV>) [243.1875,11 160x15]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (InlineNode<SPAN>) [406.1875,30 30.1875x18]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer<INPUT>) [436.375,28 202x22]
|
|
PaintableBox (Box<DIV>) [437.375,29 200x20]
|
|
PaintableWithLines (BlockContainer<DIV>) [439.375,30 0x18]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer<DIV>) [439.375,30 196x18]
|
|
TextPaintable (TextNode<#text>)
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (InlineNode<SPAN>) [646.375,30 30.1875x18]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer<TEXTAREA>) [8,44 166x36]
|
|
PaintableWithLines (BlockContainer<DIV>) [11,47 160x15]
|
|
PaintableWithLines (InlineNode<DIV>) [11,47 0x15]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (InlineNode<DIV>) [11,47 29.921875x15]
|
|
TextPaintable (TextNode<#text>)
|
|
|
|
SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto)
|
|
SC for BlockContainer<HTML> [0,0 800x88] [children: 0] (z-index: auto)
|