| <!DOCTYPE html> |
| <style> |
| #clipping-repaint-container { |
| will-change: transform; |
| overflow: hidden; |
| position: absolute; |
| left: 49px; |
| top: 49px; |
| width: 348px; |
| height: 348px; |
| border: black 1px solid; |
| } |
| |
| #non-repaint-container-compositing-layer { |
| -webkit-perspective: 1px; |
| position: absolute; |
| left: 49px; |
| top: 49px; |
| width: 248px; |
| height: 248px; |
| border: red 1px solid; |
| } |
| |
| #painting-layer { |
| display: none; |
| position: absolute; |
| left: 49px; |
| top: 49px; |
| width: 148px; |
| height: 148px; |
| border: green 1px solid; |
| } |
| |
| #compositing-child1 { |
| will-change: transform; |
| transform: translateZ(-1px); |
| position: absolute; |
| left: 48px; |
| top: 48px; |
| width: 48px; |
| height: 48px; |
| border: blue 2px solid; |
| } |
| |
| #compositing-child2 { |
| will-change: transform; |
| transform: translateZ(-1px); |
| position: absolute; |
| left: 49px; |
| top: 49px; |
| width: 48px; |
| height: 48px; |
| border: blue 1px solid; |
| } |
| </style> |
| |
| <script src="../../resources/run-after-layout-and-paint.js"></script> |
| <script> |
| if (window.testRunner) |
| testRunner.waitUntilDone(); |
| |
| window.onload = function() { |
| var paintingLayer = document.getElementById("painting-layer"); |
| paintingLayer.style.display = "block"; |
| runAfterLayoutAndPaint(function() { |
| var compositingChild2 = document.getElementById("compositing-child2"); |
| compositingChild2.style.transform = "translateZ(0)"; |
| if (window.testRunner) |
| testRunner.notifyDone(); |
| }); |
| } |
| </script> |
| |
| <div id="clipping-repaint-container"> |
| <div id="non-repaint-container-compositing-layer"> |
| <div id="painting-layer"> |
| <div id="compositing-child1"> |
| </div> |
| <div id="compositing-child2"> |
| </div> |
| </div> |
| </div> |
| </div> |