<!DOCTYPE html>
<script src="resources/autosizingTest.js"></script>
<style>
    @keyframes widthAnim {
        0% { width: 100px }
        50% { width: 800px }
    }

    #animated {
        width: 100px;
        font-size: 70px;
        animation-name: widthAnim;
        animation-duration: 0.1s;
        animation-timing-function: steps(2, start);
    }
</style>
<p>PASS if test doesn't assert or crash.</p>
<div id="animated">xxxxxxxxxxxxxxxxxxxxxxxxxxxx</div>
<script>
    if (window.testRunner) {
        testRunner.dumpAsText();
        testRunner.waitUntilDone();
    }

    setWindowSizeOverride(320, 480);

    addEventListener("animationend", function(){
        if (window.testRunner)
            testRunner.notifyDone();
    });
</script>
