<html>
<head>
<title>Test for bug 38050</title>
</head>
<body>
<p>The two buttons below should say PASS:</p>
<div id='collapseDiv' style='visibility: collapse;'>
    <input type='button' value='PASS' id='collapseButton' />
</div>
<div>
    <input type='button' value='PASS' id='visibilityButton' />
</div>

<div id='console'></div>

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

document.body.offsetTop; // Force layout.
document.getElementById("collapseDiv").style.visibility='visible'

// The two buttons should have the same width.
if (document.getElementById('collapseButton').clientWidth == document.getElementById('visibilityButton').clientWidth)
    document.getElementById('console').innerText = 'PASS';
else
    document.getElementById('console').innerText = 'FAIL';

</script> 
</body>
</html>
