<!DOCTYPE html>
<html>
    <head>
    <title>absolute positioned element with large negative top value inside tall relative positioned box does not render scrollbars</title>
        <style>
            body, p{
              margin:0;
            }
            div{
                position: relative;
                height:3000px;
            }
            span{
                position: absolute;
                top:-33551000px;
            }
        </style>
        <script>
            if (window.testRunner) {
                testRunner.dumpAsText();
            }
            
            function test() {
              var height = document.scrollingElement.scrollHeight;
              if (height == 3000)
                document.getElementById("result").innerHTML = "PASS";
              else
                document.getElementById("result").innerHTML = "<p style='color:red'>FAIL document.scrollingElement.scrollHeight = " + height +"</p>";
              }
        </script> 
    </head>
    
    <body onload="test()">
    <div>
      <p> This page should be scrollable </p>
      <p id="result"> </p>
      <span style="visibility:hidden">filler <!--abs pos with very large negative top value--></span>
    </div>
   
    </body>
</html>
