| <!DOCTYPE html> |
| <html> |
| <head> |
| <style> |
| div { |
| width: 100px; |
| height: 100px; |
| background-color: yellow; |
| } |
| |
| #squashed { |
| background-color: blue; |
| z-index: 2; |
| position:relative; |
| } |
| |
| #host { |
| position: absolute; |
| background-color: green; |
| top: 100px; |
| z-index: 1; |
| will-change: transform; |
| } |
| |
| #background { |
| will-change: transform; |
| z-index: 0; |
| position: absolute; |
| top: 50px; |
| } |
| </style> |
| <script> |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| function doTest() { |
| if (window.internals) |
| internals.forceCompositingUpdate(document); |
| document.getElementById('host').style.left = '100px'; |
| document.getElementById('console').textContent = internals.layerTreeAsText(document); |
| } |
| </script> |
| </head> |
| <body onload='doTest()'> |
| <div id='background'></div> |
| <div id='squashed'></div> |
| <div id='host'></div> |
| |
| <p style='position: relative; top: 200px;' style='display:none'> |
| This tests that squashed layers' offset from renderer is updated properly. If not properly updated, |
| the two divs will appear to be aligned vertically in the pixel results, while really the blue div |
| ('squashed') should be offset 100px left of the green ('host'). |
| </p> |
| <pre id='console' style='position: relative; top: 200px;'></pre> |
| </body> |
| </html> |