SVGRectElement
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The SVGRectElement interface provides access to the properties of <rect> elements, as well as methods to manipulate them.
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
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<rect width="300" height="100" id="myrect" />
<text x="60" y="40" fill="white" font-size="40">Click Me</text>
</svg>
CSS
#myrect {
fill: blue;
stroke-width: 1;
stroke: black;
}
JavaScript
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
| Specification |
|---|
| Scalable Vector Graphics (SVG) 2> # InterfaceSVGRectElement> |
Browser compatibility
Loading…