| OLD | NEW |
| (Empty) |
| 1 <!DOCTYPE html> | |
| 2 <html> | |
| 3 <head> | |
| 4 <script> | |
| 5 window.onload = function() { | |
| 6 if (document.body) | |
| 7 document.body.offsetTop; | |
| 8 else if (document.documentElement) | |
| 9 document.documentElement.offsetTop; | |
| 10 layoutTest(); | |
| 11 } | |
| 12 function layoutTest() { | |
| 13 var el = document.getElementById('set-inside-shape'); | |
| 14 el.setAttribute('class', 'container shape inside'); | |
| 15 el = document.getElementById('reset-inside-shape'); | |
| 16 el.setAttribute('class', 'container shape inside'); | |
| 17 | |
| 18 el = document.getElementById('remove-inside-shape'); | |
| 19 el.setAttribute('class', 'container'); | |
| 20 el = document.getElementById('remove-nested-inside-shape'); | |
| 21 el.setAttribute('class', ''); | |
| 22 | |
| 23 el = document.getElementById('set-outside-shape'); | |
| 24 el.setAttribute('class', 'container shape outside'); | |
| 25 el = document.getElementById('reset-outside-shape'); | |
| 26 el.setAttribute('class', 'container shape outside'); | |
| 27 | |
| 28 el = document.getElementById('remove-outside-shape'); | |
| 29 el.setAttribute('class', 'container'); | |
| 30 } | |
| 31 </script> | |
| 32 <style> | |
| 33 .container { | |
| 34 position: relative; | |
| 35 width: 200px; | |
| 36 height: 200px; | |
| 37 overflow-wrap: break-word; | |
| 38 border: 2px solid blue; | |
| 39 font: 40px/1 Ahem, sans-serif; | |
| 40 color: green; | |
| 41 } | |
| 42 .container.shape { | |
| 43 border-color: white; | |
| 44 } | |
| 45 .shape::before { | |
| 46 position: absolute; | |
| 47 display: block; | |
| 48 top: 8px; left: 8px; | |
| 49 width: 180px; | |
| 50 height: 180px; | |
| 51 border: 2px solid blue; | |
| 52 content: ' '; | |
| 53 } | |
| 54 .inside { | |
| 55 shape-inside: rectangle(10px, 10px, 180px, 180px); | |
| 56 } | |
| 57 .inside-alt { | |
| 58 shape-inside: circle(50% at 50% 50%); | |
| 59 } | |
| 60 .outside { | |
| 61 shape-outside: rectangle(10px, 10px, 180px, 180px); | |
| 62 } | |
| 63 .outside-alt { | |
| 64 shape-inside: circle(50% at 50% 50%); | |
| 65 } | |
| 66 </style> | |
| 67 </head> | |
| 68 <body> | |
| 69 <p>This test ensures layout properly respects shape-inside when it is set/un
set, or when shape-outside is set/unset for a value of "outside-shape". The test
requires the Ahem font, and in each case the green squares should be contained
by a blue outline.</p> | |
| 70 | |
| 71 <p>Setting shape-inside with no prior entry</p> | |
| 72 <div id='set-inside-shape' class='container'><div><div>xxxxxxxxxx</div></div
></div> | |
| 73 | |
| 74 <p>Setting shape-inside with a prior entry</p> | |
| 75 <div id='reset-inside-shape' class='container shape inside-alt'><div><div>xx
xxxxxxxx</div></div></div> | |
| 76 | |
| 77 <p>Removing shape-inside with a prior entry</p> | |
| 78 <div id='remove-inside-shape' class='container shape inside'><div><div>xxxxx
xxxxx</div></div></div> | |
| 79 | |
| 80 <p>Removing a nested shape-inside</p> | |
| 81 <div class='container shape inside'><div id='remove-nested-inside-shape' cla
ss='container shape inside-alt'><div>xxxxxxxxxx</div></div></div> | |
| 82 | |
| 83 <p>Setting outside-shape with no prior entry</p> | |
| 84 <div id='set-outside-shape' class='container'><div>xxxxxxxxxx</div></div> | |
| 85 | |
| 86 <p>Setting outside-shape with a prior entry</p> | |
| 87 <div id='reset-outside-shape' class='container' class='container shape outsi
de-alt'><div>xxxxxxxxxx</div></div> | |
| 88 | |
| 89 <p>Removing shape-outside with a prior entry</p> | |
| 90 <div id='remove-outside-shape' class='container shape outside'><div>xxxxxxxx
xx</div></div> | |
| 91 </body> | |
| 92 </html> | |
| OLD | NEW |