<style>
#test {
    overflow: hidden; /* Required to reproduce. */
}

#test::before {
    content: "";  /* Some content required to reproduce. */
    opacity: 0.999; /* Required to reproduce. */
    display: block;
    width: 100px;
    height: 100px;
    background-color: green;
}
</style>
<div id="test" style="display: none"></div>
<script type="text/javascript">
    function test()
    {
        document.getElementById("test").style.display = "block";
    }

    if (!window.testRunner)
        setTimeout(test, 0);
    else {
        document.body.offsetTop;
        testRunner.displayAndTrackRepaints();
        test();
    }
</script>
