| <!DOCTYPE html> |
| |
| <html> |
| <head> |
| <style> |
| .fixed { |
| position: fixed; |
| z-index: 1; |
| } |
| |
| .absolute { |
| position: absolute; |
| } |
| |
| .unscrollable { |
| overflow-x: hidden; |
| overflow-y: hidden; |
| } |
| |
| .box { |
| top: 100px; |
| left: 10px; |
| width: 100px; |
| height: 100px; |
| } |
| |
| .red { |
| background-color: red; |
| } |
| |
| .lime { |
| background-color: lime; |
| } |
| |
| .composited { |
| will-change: transform; |
| } |
| </style> |
| |
| <script type="text/javascript"> |
| if (window.internals) |
| internals.settings.setPreferCompositingToLCDTextEnabled(true); |
| |
| if (window.testRunner) { |
| testRunner.dumpAsText(); |
| |
| window.addEventListener("load", function() { |
| document.getElementById("layertree").innerText = internals.layerTreeAsText(document); |
| }, false); |
| } |
| </script> |
| </head> |
| |
| <body class="unscrollable"> |
| <div style="height: 4000px"> |
| <p>Even though we can opt-out of fixed-position compositing for |
| unscrollable fixed-position containers, we still need to composite |
| fixed-position layers that need compositing for other reasons such as |
| overlap.</p> |
| <pre id="layertree"></pre> |
| </div> |
| |
| <div class="absolute composited red box"></div> |
| |
| <!-- This should be composited because it overlaps a composited layer. --> |
| <div class="fixed lime box"></div> |
| </body> |
| </html> |
| |