Three bugs fixed: 1. Flex containers never had their Y coordinate set, causing them to render at Y=0 regardless of document position. 2. Flex item text was invisible because layout_children bypassed inline formatting context (IFC) setup. Replaced with layout_block_children (same approach as grid items) so text gets proper line boxes. 3. Flex item intrinsic sizing only checked grandchildren for text, missing deeper descendants like <li><a>Text</a></li>. Now recurses the full subtree. Additionally, added CSS min()/max() function support and Percent variant in grid template parsing (e.g., grid-template-columns: 1fr min(45rem, 90%) 1fr). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
77 lines
2.7 KiB
Plaintext
77 lines
2.7 KiB
Plaintext
LayoutBox node=#2 tag=html box=block
|
|
content: (0, 0, 800, 116)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 0 0
|
|
LayoutBox node=#10 tag=body box=block
|
|
content: (8, 8, 784, 100)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 8 8 8 8
|
|
LayoutBox node=#12 tag=div box=flex
|
|
content: (8, 8, 300, 40)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 10 0
|
|
LayoutBox node=#14 tag=div box=block
|
|
content: (108, 8, 50, 30)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 0 0
|
|
inline_context: 1 lines, height=19.2, max_width=7.506607
|
|
line[0]: rect=(108, 8, 7.506607, 19.2) fragments=1
|
|
frag[0]: rect=(108, 8, 7.506608, 16) text="A" start=false end=false
|
|
LayoutBox node=#15 tag=anonymous box=anon
|
|
content: (0, 0, 7.506608, 16)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 0 0
|
|
text: "A"
|
|
LayoutBox node=#17 tag=div box=block
|
|
content: (158, 8, 50, 30)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 0 0
|
|
inline_context: 1 lines, height=19.2, max_width=7.6358337
|
|
line[0]: rect=(158, 8, 7.6358337, 19.2) fragments=1
|
|
frag[0]: rect=(158, 8, 7.6358294, 16) text="B" start=false end=false
|
|
LayoutBox node=#18 tag=anonymous box=anon
|
|
content: (0, 0, 7.6358294, 16)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 0 0
|
|
text: "B"
|
|
LayoutBox node=#21 tag=div box=flex
|
|
content: (8, 58, 300, 40)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 10 0
|
|
LayoutBox node=#23 tag=div box=block
|
|
content: (8, 58, 50, 30)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 0 0
|
|
inline_context: 1 lines, height=19.199997, max_width=6.883994
|
|
line[0]: rect=(8, 58, 6.883994, 19.2) fragments=1
|
|
frag[0]: rect=(8, 58, 6.883994, 16) text="X" start=false end=false
|
|
LayoutBox node=#24 tag=anonymous box=anon
|
|
content: (0, 0, 6.883994, 16)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 0 0
|
|
text: "X"
|
|
LayoutBox node=#26 tag=div box=block
|
|
content: (258, 58, 50, 30)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 0 0
|
|
inline_context: 1 lines, height=19.199997, max_width=6.649048
|
|
line[0]: rect=(258, 58, 6.649048, 19.2) fragments=1
|
|
frag[0]: rect=(258, 58, 6.6490455, 16) text="Y" start=false end=false
|
|
LayoutBox node=#27 tag=anonymous box=anon
|
|
content: (0, 0, 6.6490455, 16)
|
|
padding: 0 0 0 0
|
|
border: 0 0 0 0
|
|
margin: 0 0 0 0
|
|
text: "Y"
|