Files
ladybird/Tests/LibWeb/Layout/expected/input-placeholder.txt
Jelle Raaijmakers 6a29b8cc03 LibWeb: Derive inline-block baseline from nested content
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.
2026-01-22 19:36:09 +01:00

76 lines
5.1 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 70 0+0+0] [BFC] children: not-inline
BlockContainer <body> at [8,8] [8+0+0 784 0+0+8] [8+0+0 54 0+0+8] children: inline
frag 0 from BlockContainer start: 0, length: 0, rect: [9,9 200x25] baseline: 19.5
frag 1 from TextNode start: 0, length: 1, rect: [210,10 10x23] baseline: 17.5
" "
frag 2 from BlockContainer start: 0, length: 0, rect: [221,9 200x25] baseline: 19.5
frag 3 from TextNode start: 0, length: 1, rect: [422,10 10x23] baseline: 17.5
" "
frag 4 from BlockContainer start: 0, length: 0, rect: [433,9 200x25] baseline: 19.5
frag 5 from BlockContainer start: 0, length: 0, rect: [9,36 200x25] baseline: 19.5
BlockContainer <input> at [9,9] inline-block [0+1+0 200 0+1+0] [0+1+0 25 0+1+0] [BFC] children: not-inline
Box <div> at [11,10] flex-container(row) [0+0+2 196 2+0+0] [0+0+1 23 1+0+0] [FFC] children: not-inline
BlockContainer <div> at [11,10] flex-item [0+0+0 196 0+0+0] [0+0+0 23 0+0+0] [BFC] children: inline
frag 0 from TextNode start: 0, length: 4, rect: [11,10 40.1875x23] baseline: 17.5
"text"
TextNode <#text> (not painted)
TextNode <#text> (not painted)
BlockContainer <input> at [221,9] inline-block [0+1+0 200 0+1+0] [0+1+0 25 0+1+0] [BFC] children: not-inline
Box <div> at [223,10] flex-container(row) [0+0+2 196 2+0+0] [0+0+1 23 1+0+0] [FFC] children: not-inline
BlockContainer <div> at [223,10] flex-item [0+0+0 0 0+0+0] [0+0+0 23 0+0+0] [BFC] children: inline
frag 0 from TextNode start: 0, length: 0, rect: [223,10 0x23] baseline: 17.5
TextNode <#text> (not painted)
BlockContainer <div> at [223,10] flex-item [0+0+0 196 0+0+0] [0+0+0 23 0+0+0] [BFC] children: inline
frag 0 from TextNode start: 0, length: 34, rect: [223,10 344.546875x23] baseline: 17.5
"This placeholder should be visible"
TextNode <#text> (not painted)
TextNode <#text> (not painted)
BlockContainer <input> at [433,9] inline-block [0+1+0 200 0+1+0] [0+1+0 25 0+1+0] [BFC] children: not-inline
Box <div> at [435,10] flex-container(row) [0+0+2 196 2+0+0] [0+0+1 23 1+0+0] [FFC] children: not-inline
BlockContainer <div> at [435,10] flex-item [0+0+0 196 0+0+0] [0+0+0 23 0+0+0] [BFC] children: inline
frag 0 from TextNode start: 0, length: 4, rect: [435,10 40.1875x23] baseline: 17.5
"text"
TextNode <#text> (not painted)
TextNode <#text> (not painted)
BlockContainer <input#placeholder> at [9,36] inline-block [0+1+0 200 0+1+0] [0+1+0 25 0+1+0] [BFC] children: not-inline
Box <div> at [11,37] flex-container(row) [0+0+2 196 2+0+0] [0+0+1 23 1+0+0] [FFC] children: not-inline
BlockContainer <div> at [11,37] flex-item [0+0+0 0 0+0+0] [0+0+0 23 0+0+0] [BFC] children: inline
frag 0 from TextNode start: 0, length: 0, rect: [11,37 0x23] baseline: 17.5
TextNode <#text> (not painted)
BlockContainer <div> at [11,37] flex-item [0+0+0 196 0+0+0] [0+0+0 23 0+0+0] [BFC] children: inline
frag 0 from TextNode start: 0, length: 39, rect: [11,37 396.171875x23] baseline: 17.5
"This placeholder should also be visible"
TextNode <#text> (not painted)
TextNode <#text> (not painted)
TextNode <#text> (not painted)
ViewportPaintable (Viewport<#document>) [0,0 800x600]
PaintableWithLines (BlockContainer<HTML>) [0,0 800x70]
PaintableWithLines (BlockContainer<BODY>) [8,8 784x54]
PaintableWithLines (BlockContainer<INPUT>) [8,8 202x27]
PaintableBox (Box<DIV>) [9,9 200x25]
PaintableWithLines (BlockContainer<DIV>) [11,10 196x23]
TextPaintable (TextNode<#text>)
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer<INPUT>) [220,8 202x27] overflow: [221,9 346.546875x26]
PaintableBox (Box<DIV>) [221,9 200x25] overflow: [221,9 346.546875x26]
PaintableWithLines (BlockContainer<DIV>) [223,10 0x23]
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer<DIV>) [223,10 196x23] overflow: [223,10 344.546875x23]
TextPaintable (TextNode<#text>)
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer<INPUT>) [432,8 202x27]
PaintableBox (Box<DIV>) [433,9 200x25]
PaintableWithLines (BlockContainer<DIV>) [435,10 196x23]
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer<INPUT>#placeholder) [8,35 202x27] overflow: [9,36 398.171875x26]
PaintableBox (Box<DIV>) [9,36 200x25] overflow: [9,36 398.171875x26]
PaintableWithLines (BlockContainer<DIV>) [11,37 0x23]
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer<DIV>) [11,37 196x23] overflow: [11,37 396.171875x23]
TextPaintable (TextNode<#text>)
SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto)
SC for BlockContainer<HTML> [0,0 800x70] [children: 0] (z-index: auto)