OLD | NEW |
1 <html style="-webkit-writing-mode:horizontal-tb"> | 1 <!DOCTYPE html> |
2 <head> | |
3 <style> | 2 <style> |
| 3 body { margin: 8px; -webkit-writing-mode: vertical-rl; } |
4 div.box { -webkit-box-sizing: border; border: solid blue; } | 4 div.box { -webkit-box-sizing: border; border: solid blue; } |
5 div.shorter { width: 54px; } | 5 div.shorter { width: 54px; } |
6 div.taller { width: 72px; } | 6 div.taller { width: 72px; } |
7 </style> | 7 </style> |
8 </head> | 8 <div style="width: 100px; height: 325px; -webkit-columns:6; -webkit-column-gap:5
px; columns:6; column-gap:5px; column-fill:auto;"> |
9 <body style="-webkit-writing-mode:vertical-rl; width:800px;"> | |
10 <div style="width: 100px; height: 630px; -webkit-columns:6; -webkit-column-gap:5
px; columns:6; column-gap:5px; column-fill:auto;"> | |
11 <div class="taller box"></div> | 9 <div class="taller box"></div> |
12 <div class="taller box"></div> | 10 <div class="taller box"></div> |
13 <div id="break-before" class="shorter box" style="-webkit-column-break-befor
e: always;"></div> | 11 <div id="break-before" class="shorter box" style="-webkit-column-break-befor
e: always;"></div> |
14 <div class="shorter box" style="-webkit-column-break-after: always;"></div> | 12 <div class="shorter box" style="-webkit-column-break-after: always;"></div> |
15 <div id="after-break" class="shorter box"></div> | 13 <div id="after-break" class="shorter box"></div> |
16 <div id="no-break" class="shorter box" style="-webkit-column-break-inside: a
void;"></div> | 14 <div id="no-break" class="shorter box" style="-webkit-column-break-inside: a
void;"></div> |
17 </div> | 15 </div> |
18 <pre id="console"></pre> | 16 <pre id="console"></pre> |
19 <script> | 17 <script> |
20 if (window.testRunner) | 18 if (window.testRunner) |
21 testRunner.dumpAsText(); | 19 testRunner.dumpAsText(); |
22 | 20 |
23 function log(message) | 21 function log(message) |
24 { | 22 { |
25 document.getElementById("console").appendChild(document.createTextNode(m
essage + "\n")); | 23 document.getElementById("console").appendChild(document.createTextNode(m
essage + "\n")); |
26 } | 24 } |
27 | 25 |
28 function testBoxPosition(id, expectedLeft, expectedTop) | 26 function testBoxColumn(id, expectedColumn) { |
29 { | |
30 var rect = document.getElementById(id).getBoundingClientRect(); | 27 var rect = document.getElementById(id).getBoundingClientRect(); |
31 if (Math.round(rect.left) === expectedLeft && Math.round(rect.top) === e
xpectedTop) | 28 var actualPosition = Math.round(rect.top); |
32 log("PASS: '" + id + "' is at (" + expectedLeft + ", " + expectedTop
+ ")"); | 29 var expectedPosition = 8 + (50 + 5) * expectedColumn; |
| 30 |
| 31 if (actualPosition == expectedPosition) |
| 32 log("PASS: '" + id + "' is in column " + expectedColumn); |
33 else | 33 else |
34 log("FAIL: '" + id + "' is at (" + Math.round(rect.left) + ", " + Ma
th.round(rect.top) + ") instead of (" + expectedLeft + " ," + expectedTop + ")")
; | 34 log("FAIL: '" + id + "' is at position " + actualPosition + " instea
d of " + expectedPosition); |
35 } | 35 } |
36 | 36 |
37 testBoxPosition("break-before", 748, 220); | 37 testBoxColumn("break-before", 2); |
38 testBoxPosition("after-break", 748, 431); | 38 testBoxColumn("after-break", 4); |
| 39 testBoxColumn("no-break", 5); |
39 </script> | 40 </script> |
OLD | NEW |