<html>
<head>
  <style>
  div {
    background: lime;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-image: url(resources/animated-rect-relative-size.svg);
    height: 600px;
    width: 800px;
  }
  </style>
  <script type="text/javascript" charset="utf-8">
    if (window.testRunner)
      testRunner.waitUntilDone();
    
    function pageLoaded() 
    {
      window.setTimeout(function() {
        if (window.testRunner)
          testRunner.notifyDone();
      }, 400);    // empirically determined delay. SVG animation has 100ms duration.
    }

    window.addEventListener('load', pageLoaded, false);
  </script>
  </script>
</head>
<body style='margin: 0px'>
<div>&nbsp;</div>
</body>
</html>
