<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="reftest-wait" onload="setTimeAndSnapshot(1, true)"> <title>Test animation of the "preserveAspectRatio" attribute on the "svg" element</title> <script xlink:href="smil-util.js" type="text/javascript"/> <rect width="100%" height="100%" fill="lime"/> <!-- 40% through animation simple duration - tests that the animation doesn't affect the element too early --> <svg width="100" height="50" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid meet"> <!-- this should change the referencing element at 1.25s, causing the red rect to stretch to fill its whole viewport --> <animate attributeName="preserveAspectRatio" calcMode="discrete" begin="0s" dur="2.5s" from="xMidYMid meet" to="xMidYMid slice" fill="freeze"/> <rect width="100%" height="100%" fill="red"/> </svg> <rect x="25" width="50" height="50" fill="lime"/> <!-- 50% through animation simple duration - tests that the animation affects the element now --> <rect y="50" width="100" height="50" fill="red"/> <svg y="50" width="100" height="50" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid meet"> <!-- this should change the referencing element at 1s, causing the lime rect to stretch to fill its whole viewport --> <animate attributeName="preserveAspectRatio" calcMode="discrete" begin="0s" dur="2s" from="xMidYMid meet" to="xMidYMid slice" fill="freeze"/> <rect width="100%" height="100%" fill="lime"/> </svg> </svg>