<html>
<head>
<script>
  if (window.testRunner) {
    testRunner.dumpAsText();
    window.addEventListener('load', function () {
     document.getElementById('layers').textContent = internals.layerTreeAsText(document);
     document.getElementById('test').style.display = 'none';
    }, false);
  }
</script>
<style>
.stacking-context {
  position: absolute;
  z-index: -1;
}
.accelerated {
  transform: rotateX(0deg);
  will-change: transform;
}
.blended {
  mix-blend-mode: multiply;
}
</style>
</head>
<body>
  <div id="test">
    <!--This test makes sure that isolation property is set only to
        the first ascendant layer being a stacking context -->
    <div class="stacking-context" style="background-color:red">
      <div class="stacking-context" style="background-color: green">
        <img class="accelerated blended" src="resources/reference.png">
      </div>
    </div>
    <div class="accelerated stacking-context" style="background-color:red">
      <div class="stacking-context" style="background-color: green">
        <img class="accelerated blended" src="resources/reference.png">
      </div>
    </div>
  </div>
  <pre id="layers">Layer tree goes here when testing.</pre>
</body>
</html>
