1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 23:47:45 +00:00

LibWeb: Don't subtract border from used table width

The used width is already a content width, which doesn't include
borders. Border widths should be subtracted from the specified width
instead, since that initially specifies the total width including
borders, for consistent comparison. Also handle table box padding as an
additional fix.
This commit is contained in:
Andi Gallo 2023-06-25 01:23:36 +00:00 committed by Andreas Kling
parent 1f95a40780
commit 2c4908094c
18 changed files with 133 additions and 86 deletions

View file

@ -1,41 +1,38 @@
Viewport <#document> at (0,0) content-size 800x600 children: not-inline
BlockContainer <html> at (0,0) content-size 800x146.21875 [BFC] children: not-inline
BlockContainer <html> at (0,0) content-size 800x127.8125 [BFC] children: not-inline
BlockContainer <(anonymous)> at (0,0) content-size 800x0 children: inline
TextNode <#text>
BlockContainer <body> at (8,8) content-size 784x130.21875 children: not-inline
TableWrapper <(anonymous)> at (8,8) content-size 55.046875x130.21875 [BFC] children: not-inline
Box <table#full-table> at (10,61.8125) content-size 55.046875x72.40625 table-box [TFC] children: not-inline
BlockContainer <body> at (8,8) content-size 784x111.8125 children: not-inline
TableWrapper <(anonymous)> at (8,8) content-size 59.046875x111.8125 [BFC] children: not-inline
Box <table#full-table> at (10,43.40625) content-size 59.046875x72.40625 table-box [TFC] children: not-inline
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
BlockContainer <caption> at (8,8) content-size 59.046875x53.8125 [BFC] children: inline
line 0 width: 14.265625, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 1, length: 1, rect: [22,8 14.265625x17.46875]
"A"
line 1 width: 31.765625, height: 17.9375, bottom: 35.40625, baseline: 13.53125
frag 0 from TextNode start: 3, length: 4, rect: [14,25 31.765625x17.46875]
"long"
line 2 width: 59.046875, height: 18.40625, bottom: 53.34375, baseline: 13.53125
frag 0 from TextNode start: 8, length: 7, rect: [8,42 59.046875x17.46875]
BlockContainer <caption> at (8,8) content-size 59.046875x35.40625 [BFC] children: inline
line 0 width: 54.03125, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 1, length: 6, rect: [9,8 54.03125x17.46875]
"A long"
line 1 width: 59.046875, height: 17.9375, bottom: 35.40625, baseline: 13.53125
frag 0 from TextNode start: 8, length: 7, rect: [8,25 59.046875x17.46875]
"caption"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
Box <thead> at (10,10) content-size 51.6875x21.46875 table-header-group children: not-inline
Box <thead> at (10,10) content-size 53.046875x21.46875 table-header-group children: not-inline
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
Box <tr> at (12,63.8125) content-size 51.6875x21.46875 table-row children: not-inline
Box <tr> at (12,45.40625) content-size 53.046875x21.46875 table-row children: not-inline
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
BlockContainer <td> at (14,65.8125) content-size 20.609375x17.46875 table-cell [BFC] children: inline
BlockContainer <td> at (14,47.40625) content-size 21.256598x17.46875 table-cell [BFC] children: inline
line 0 width: 20.609375, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 0, length: 2, rect: [14,65.8125 20.609375x17.46875]
frag 0 from TextNode start: 0, length: 2, rect: [14,47.40625 20.609375x17.46875]
"A1"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
BlockContainer <td> at (40.609375,65.8125) content-size 23.078125x17.46875 table-cell [BFC] children: inline
BlockContainer <td> at (41.256598,47.40625) content-size 23.790276x17.46875 table-cell [BFC] children: inline
line 0 width: 23.078125, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 0, length: 2, rect: [40.609375,65.8125 23.078125x17.46875]
frag 0 from TextNode start: 0, length: 2, rect: [41.256598,47.40625 23.078125x17.46875]
"A2"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
@ -44,22 +41,22 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
Box <tbody> at (10,31.46875) content-size 51.6875x21.46875 table-row-group children: not-inline
Box <tbody> at (10,31.46875) content-size 53.046875x21.46875 table-row-group children: not-inline
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
Box <tr> at (12,85.28125) content-size 51.6875x21.46875 table-row children: not-inline
Box <tr> at (12,66.875) content-size 53.046875x21.46875 table-row children: not-inline
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
BlockContainer <td> at (14,89.28125) content-size 20.609375x17.46875 table-cell [BFC] children: inline
BlockContainer <td> at (14,70.875) content-size 21.256598x17.46875 table-cell [BFC] children: inline
line 0 width: 15.6875, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 0, length: 2, rect: [14,89.28125 15.6875x17.46875]
frag 0 from TextNode start: 0, length: 2, rect: [14,70.875 15.6875x17.46875]
"B1"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
BlockContainer <td> at (40.609375,89.28125) content-size 23.078125x17.46875 table-cell [BFC] children: inline
BlockContainer <td> at (41.256598,70.875) content-size 23.790276x17.46875 table-cell [BFC] children: inline
line 0 width: 18.15625, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 0, length: 2, rect: [40.609375,89.28125 18.15625x17.46875]
frag 0 from TextNode start: 0, length: 2, rect: [41.256598,70.875 18.15625x17.46875]
"B2"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
@ -68,22 +65,22 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
Box <tfoot> at (10,52.9375) content-size 51.6875x21.46875 table-footer-group children: not-inline
Box <tfoot> at (10,52.9375) content-size 53.046875x21.46875 table-footer-group children: not-inline
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
Box <tr> at (12,106.75) content-size 51.6875x21.46875 table-row children: not-inline
Box <tr> at (12,88.34375) content-size 53.046875x21.46875 table-row children: not-inline
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
BlockContainer <td> at (14,112.75) content-size 20.609375x17.46875 table-cell [BFC] children: inline
BlockContainer <td> at (14,94.34375) content-size 21.256598x17.46875 table-cell [BFC] children: inline
line 0 width: 18.890625, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 0, length: 2, rect: [14,112.75 18.890625x17.46875]
frag 0 from TextNode start: 0, length: 2, rect: [14,94.34375 18.890625x17.46875]
"F1"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
BlockContainer <td> at (40.609375,112.75) content-size 23.078125x17.46875 table-cell [BFC] children: inline
BlockContainer <td> at (41.256598,94.34375) content-size 23.790276x17.46875 table-cell [BFC] children: inline
line 0 width: 21.359375, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 0, length: 2, rect: [40.609375,112.75 21.359375x17.46875]
frag 0 from TextNode start: 0, length: 2, rect: [41.256598,94.34375 21.359375x17.46875]
"F2"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
@ -92,5 +89,5 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline
TextNode <#text>
BlockContainer <(anonymous)> (not painted) children: inline
TextNode <#text>
BlockContainer <(anonymous)> at (8,138.21875) content-size 784x0 children: inline
BlockContainer <(anonymous)> at (8,119.8125) content-size 784x0 children: inline
TextNode <#text>