The SVGRectElement interface provides access to the properties of <rect> elements, as well as methods to manipulate them.
On this page
SVGRectElement
Instance properties
This interface also inherits properties from its parent, SVGGeometryElement.
SVGRectElement.xRead only-
Returns an
SVGAnimatedLengthcorresponding to thexattribute of the given<rect>element. SVGRectElement.yRead only-
Returns an
SVGAnimatedLengthcorresponding to theyattribute of the given<rect>element. SVGRectElement.widthRead only-
Returns an
SVGAnimatedLengthcorresponding to thewidthattribute of the given<rect>element. SVGRectElement.heightRead only-
Returns an
SVGAnimatedLengthcorresponding to theheightattribute of the given<rect>element. SVGRectElement.rxRead only-
Returns an
SVGAnimatedLengthcorresponding to therxattribute of the given<rect>element. SVGRectElement.ryRead only-
Returns an
SVGAnimatedLengthcorresponding to theryattribute of the given<rect>element.
Instance methods
This interface doesn't implement any specific methods, but inherits methods from its parent, SVGGeometryElement.
Examples
Changing the color of an SVG rectangle
This example sets the fill color of an SVGRectElement to a random value whenever the user clicks it.
HTML
html
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<rect
width="300"
height="100"
id="myrect"
style="fill:rgb(0,0,255);stroke-width:1;stroke:rgb(0,0,0)" />
<text x="60" y="40" fill="white" font-size="40">Click Me</text>
</svg>
JavaScript
js
const myRect = document.querySelector("#myrect");
myRect.addEventListener("click", () => {
const r = Math.floor(Math.random() * 255);
const g = Math.floor(Math.random() * 255);
const b = Math.floor(Math.random() * 255);
myRect.style.fill = `rgb(${r}, ${g}, ${b})`;
});
Result
Specifications
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
SVGRectElement |
1 | 12 | 1.5 | 9 | ≤12.1 | 3 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 |
height |
1 | 12 | 1.5 | 9 | ≤12.1 | 3 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 |
rx |
1 | 12 | 1.5 | 9 | ≤12.1 | 4 | 3 | 18 | 4 | ≤12.1 | 3.2 | 1.0 |
ry |
1 | 12 | 1.5 | 9 | ≤12.1 | 4 | 3 | 18 | 4 | ≤12.1 | 3.2 | 1.0 |
width |
1 | 12 | 1.5 | 9 | ≤12.1 | 3 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 |
x |
1 | 12 | 1.5 | 9 | ≤12.1 | 3 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 |
y |
1 | 12 | 1.5 | 9 | ≤12.1 | 3 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 |
See also
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/SVGRectElement