| <svg xmlns="http://www.w3.org/2000/svg" xmlns:html="http://www.w3.org/1999/xhtml"> |
| <g id="testmeta"> |
| <title>CSS Masking: Panning with clipPath and mask nesting 2</title> |
| <html:link rel="author" title="Dirk Schulze" href="mailto:dschulze@adobe.com"/> |
| <html:link rel="help" href="http://www.w3.org/TR/css-masking-1/#svg-clipping-paths"/> |
| <html:link rel="help" href="http://www.w3.org/TR/css-masking-1/#ClipPathElement"/> |
| <html:link rel="help" href="http://www.w3.org/TR/css-masking-1/#svg-masks"/> |
| <html:link rel="help" href="http://www.w3.org/TR/css-masking-1/#MaskElement"/> |
| <html:link rel="match" href="reference/mask-nested-clip-path-001-ref.svg" /> |
| <metadata class="flags">svg</metadata> |
| <desc class="assert">Multiple references between clipPath and |
| mask elements. The current viewport gets translated by panning. You |
| should see a green square with 4 equally sized and positioned white squares |
| in it.</desc> |
| </g> |
| <clipPath id="clip1" clipPathUnits="objectBoundingBox"> |
| <rect x="0.1" y="0.1" width="0.3" height="0.3"/> |
| <rect x="0.1" y="0.6" width="0.3" height="0.3"/> |
| </clipPath> |
| |
| <clipPath id="clip2" clipPathUnits="objectBoundingBox"> |
| <rect x="0.6" y="0.1" width="0.3" height="0.3"/> |
| <rect x="0.6" y="0.6" width="0.3" height="0.3"/> |
| </clipPath> |
| |
| <clipPath id="clip" clipPathUnits="objectBoundingBox"> |
| <rect x="0" y="0" width="1" height="1" clip-path="url(#clip1)"/> |
| <rect x="0" y="0" width="1" height="1" clip-path="url(#clip2)"/> |
| </clipPath> |
| |
| <mask id="mask1a" x="0" y="0" width="1" height="1" maskContentUnits="objectBoundingBox"> |
| <rect x="0" y="0" width="1" height="1" fill="white"/> |
| <rect x="0" y="0" width="1" height="1" fill="black" clip-path="url(#clip1)" /> |
| </mask> |
| |
| <mask id="mask1b" x="0" y="0" width="1" height="1" maskContentUnits="objectBoundingBox"> |
| <rect x="0" y="0" width="1" height="1" fill="white"/> |
| <rect x="0" y="0" width="1" height="1" fill="black" clip-path="url(#clip2)" /> |
| </mask> |
| |
| <mask id="mask2" x="0" y="0" width="1" height="1" maskContentUnits="objectBoundingBox"> |
| <rect x="0" y="0" width="1" height="1" fill="white" mask="url(#mask1a)"/> |
| </mask> |
| |
| <mask id="mask3" x="0" y="0" width="1" height="1" maskContentUnits="objectBoundingBox"> |
| <rect x="0" y="0" width="1" height="1" fill="white" mask="url(#mask1b)"/> |
| </mask> |
| |
| <g mask="url(#mask3)" transform="translate(75, 0)"> |
| <rect width="200" height="200" fill="green" mask="url(#mask2)"/> |
| </g> |
| <script> |
| var translate = document.getElementsByTagName('svg')[0].currentTranslate; |
| translate.x = -75; |
| </script> |
| </svg> |