The maskContentUnits
attribute indicates which coordinate system to use for the contents of the <mask>
element.
Only one element is using this attribute: <mask>
html,body,svg { height:100% }
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"> <mask id="myMask1" maskContentUnits="userSpaceOnUse"> <rect fill="black" x="0" y="0" width="100%" height="100%" /> <circle fill="white" cx="50" cy="50" r="35" /> </mask> <mask id="myMask2" maskContentUnits="objectBoundingBox"> <rect fill="black" x="0" y="0" width="100%" height="100%" /> <circle fill="white" cx=".5" cy=".5" r=".35" /> </mask> <!-- Some reference rect to materialized the mask --> <rect id="r1" x="0" y="0" width="45" height="45" /> <rect id="r2" x="0" y="55" width="45" height="45" /> <rect id="r3" x="55" y="55" width="45" height="45" /> <rect id="r4" x="55" y="0" width="45" height="45" /> <!-- The first 3 rect are masked with useSpaceOnUse units --> <use mask="url(#myMask1)" xlink:href="#r1" fill="red" /> <use mask="url(#myMask1)" xlink:href="#r2" fill="red" /> <use mask="url(#myMask1)" xlink:href="#r3" fill="red" /> <!-- The last rect is masked with objectBoundingBox units --> <use mask="url(#myMask2)" xlink:href="#r4" fill="red" /> </svg>
mask
For <mask>
, maskContentUnits
defines the coordinate system in use for the content of the element.
Value | userSpaceOnUse | objectBoundingBox |
---|---|
Default value | userSpaceOnUse |
Animatable | Yes |
userSpaceOnUse
- This value indicates that all coordinates inside the
<mask>
element refer to the user coordinate system as defined when the mask was created. objectBoundingBox
- This value indicates that all coordinates inside the
<mask>
element are relative to the bounding box of the element the mask is applied to. A bounding box could be considered the same as if the content of the<mask>
were bound to a "0 0 1 1
"viewbox
.
Specifications
Specification | Status | Comment |
---|---|---|
CSS Masking Module Level 1 The definition of 'maskContentUnits' in that specification. |
Candidate Recommendation | |
Scalable Vector Graphics (SVG) 1.1 (Second Edition) The definition of 'maskContentUnits' in that specification. |
Recommendation | Initial definition |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
maskContentUnits | Chrome ? | Edge ? | Firefox ? | IE ? | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Firefox Android ? | Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
Legend
- Compatibility unknown
- Compatibility unknown