<html>
<head>
    <title>Test for http://bugs.webkit.org/show_bug.cgi?id=12885</title>
    <script type="text/javascript">
        if (window.testRunner)
            testRunner.waitUntilDone();
        function runTest()
        {
            document.getElementById('target').style.width = '100px';
            document.getElementById('target').style.height = '100px';
            document.getElementById('target').style.marginTop = '-100px';
            if (window.testRunner)
                testRunner.notifyDone();
        }
    </script>
</head>
<body onload="setTimeout(runTest, 0);">
    <div style="position:absolute; height:100px; width:100px;background-color:red"></div>
    <div style="padding-top:100px"></div>
    <div style="position:absolute"><div id="target" style="display:inline-block; background-color:green"></div></div>
    </div>
</body>
</html>
