<!DOCTYPE html> <!-- webkit-test-runner [ internal:AsyncOverflowScrollingEnabled=true ] -->
<html>
<head>
    <style>
        body {
            margin: 0;
        }
        #scroller {
            margin: 10px;
            background-color: silver;
            width: 400px;
            height: 300px;
            overflow: scroll;
            opacity: 0.8;
        }
        
        .scrolling-content {
            height: 1000px;
        }
        
        .absolute {
            position: absolute;
            top: 20px;
            left: 20px;
            width: 200px;
            height: 200px;
            background-color: blue;
        }
    </style>
    <script>
        if (window.testRunner)
            testRunner.waitUntilDone();

        function doTest()
        {
            setTimeout(() => {
                scroller.scrollTop = 200;

                if (window.testRunner)
                    testRunner.notifyDone();
            }, 0);
        }

        window.addEventListener('load', doTest, false);
    </script>
</head>
<body>
    <div id="scroller">
        <div class="scrolling-content">
            <div class="absolute"></div>
        </div>
    </div>
</body>
</html>
