<style type="text/css">
::-webkit-scrollbar {
  width: 0.8em;
  height: 0.8em;
}
::-webkit-scrollbar-thumb {
  background: #666 -webkit-gradient(linear, left top, right top, from(rgba(255,255,255,0.5)), color-stop(0.5, rgba(255,255,255,0.1)), color-stop(0.5, rgba(0,0,0,0)), to(rgba(0,0,0,0.01)));
}
</style>

<body>
<script>
if (window.testRunner)
    testRunner.dumpAsText();

function test()
{
    // Force a layout.
    window.x = document.body.offsetTop;

    var styles = document.getElementsByTagName("style");
    for (var i = 0; i < styles.length; ++i)
        document.head.appendChild(styles[i]);
}
document.addEventListener('DOMContentLoaded', test, false);
</script>
<div style="height: 1000px;">
This test passes if it does not crash.
</div>
</body>
