<!DOCTYPE html>
<html>
<head>
<style>
.fixed-no-z-index {
  position: absolute;
  left: 10px;
}
.fixed-with-z-index {
  position: fixed;
  z-index: 1;
  left: 10px;
}
</style>
<script>
  if (window.internals) {
    window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
    window.internals.setPageScaleFactor(0.5, 0, 0);
  }
  function test() {
    if (window.testRunner)
      testRunner.dumpAsText(true);

    var d = document.getElementById('frame').contentDocument.open();
    d.write("<div style='position:fixed; z-index: 1; left; 10px;'>TEST</div>");
    d.close();
  }
</script>
</head>
<body onload="test();" style="width:2000px;height:2000px;">
<div class="fixed-no-z-index">TEST</div><br>
<iframe id="frame"></iframe>
</body>
</html>
