Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

SVG Preview (Scaled)

Preview of https://hg.mozilla.org/mozilla-central/raw-file/tip/layout/reftests/svg/smil/anim-svg-preserveAspectRatio-01.svg
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>