SVGUseElement: width 属性

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

SVGUseElement 接口的只读属性 width 使用 SVGAnimatedLength 对象描述引用的元素的宽度。它反映了 <use> 元素上 width 属性的计算值。

属性值可以是 <length><percentage><number>SVGAnimatedLength.baseVal 的数值是用户坐标系中引用元素的宽度。

一个 SVGAnimatedLength 对象。

示例

给定以下 SVG

html
<svg viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <circle id="circle1" cx="50" cy="50" r="40" fill="blue" />
    <circle id="circle2" cx="50" cy="50" r="40" fill="red" />
  </defs>
  <use x="50%" y="50%" href="#circle1" width="50" />
  <use x="25%" y="50%" href="#circle2" width="100" />
</svg>

我们可以访问 width 属性的计算值

js
const uses = document.querySelectorAll("use");
const widthUse1 = uses[0].width;
const widthUse2 = uses[1].width;

console.log(widthUse1.baseVal.value); // output: 50
console.log(widthUse2.baseVal.value); // output: 100

规范

规范
Scalable Vector Graphics (SVG) 2
# __svg__SVGUseElement__width

浏览器兼容性

另见