<html> <style type="text/css"> .firstDivStyle + .secondDivStyle { display: table-footer-group; } .rubyStyle { position: relative; } .secondDivStyle { -webkit-appearance: button; } .posAbsolute { position: absolute; } </style> <script type="text/javascript"> function dumpTest() { testRunner.notifyDone(); } function runTest() { document.getElementById('ruby').innerHTML = '<audio controls="controls" id="aud" src="blah.ogg" class="posAbsolute"></audio>'; height = document.body.clientHeight; // Force layout document.body.removeChild(document.getElementById('remove')); // Cause anonymous blocks containing 'secondDivStyle' and 'ruby' to be merged document.getElementById('aud').style.color = "blue"; // Force style recalc setTimeout('dumpTest()', 10); if (window.testRunner) { testRunner.waitUntilDone(); testRunner.dumpAsText(); } } window.onload = runTest; </script> <body> PASS, if no exception or crash in debug <div class="firstDivStyle"></div> <div class="secondDivStyle"></div> <div id="remove"></div> <ruby id="ruby" class="rubyStyle"></ruby> </body> </html>