<html>
<head>
<script>
if (window.testRunner)
    testRunner.dumpAsText();

function test() {
    var passed = document.getElementsByTagName('li')[2].offsetWidth > document.getElementsByTagName('li')[0].offsetWidth;
    document.getElementsByTagName('div')[0].innerText = passed ? "PASS" : "FAIL";
}
</script>
<style type="text/css">
    ul, li {display: inline;}
    ul {margin: 0;}
    li { float: left; }
    li:last-child:after {content: "4";}
</style>
</head>
<body onload="test()">
    You should see 1234 below (4 won't be visible in the DRT text dump, but it should still say PASS below)<br>
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
    </ul>
    <br>
    <div></div>
</body>
</html>
