patternUnits
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
The patternUnits
attribute indicates which coordinate system to use for the geometry properties of the <pattern>
element.
You can use this attribute with the following SVG elements:
Example
<svg viewBox="0 0 200 100" xmlns="http://www.w3.org/2000/svg">
<!-- All geometry properties are relative to the current user space -->
<pattern
id="p1"
x="12.5"
y="12.5"
width="25"
height="25"
patternUnits="userSpaceOnUse">
<circle cx="10" cy="10" r="10" />
</pattern>
<!-- All geometry properties are relative to the target bounding box -->
<pattern
id="p2"
x=".125"
y=".125"
width=".25"
height=".25"
patternUnits="objectBoundingBox">
<circle cx="10" cy="10" r="10" />
</pattern>
<!-- Left square with user space tiles -->
<rect x="10" y="10" width="80" height="80" fill="url(#p1)" />
<!-- Right square with bounding box tiles -->
<rect x="110" y="10" width="80" height="80" fill="url(#p2)" />
</svg>
pattern
For <pattern>
, patternUnits
defines the coordinate system in use for the geometry properties (x
, y
, width
and height
) of the element.
Value | userSpaceOnUse | objectBoundingBox |
---|---|
Default value | objectBoundingBox |
Animatable | Yes |
userSpaceOnUse
-
This value indicates that all coordinates for the geometry properties refer to the user coordinate system as defined when the pattern was applied.
objectBoundingBox
-
This value indicates that all coordinates for the geometry properties represent fractions or percentages of the bounding box of the element to which the pattern is applied. A bounding box could be considered the same as if the content of the
<pattern>
were bound to a"0 0 1 1"
viewBox
.
Specifications
Specification |
---|
Scalable Vector Graphics (SVG) 2 # PatternElementPatternUnitsAttribute |
Browser compatibility
BCD tables only load in the browser