createElement("svg") 的大小是 0,0

2024-02-26

我想用 JS 创建一个 SVG 并设置大小,但是当我使用createElement("svg"),生成的 HTML 是

<svg class="jscreated" style="width: 500px; height: 400px;"></svg>

但 svg 大小显示为0,0.

看这个例子:

var svg=document.createElement("svg");
document.body.appendChild(svg);
svg.setAttribute("class","jscreated");
svg.style.width="500px";
svg.style.height="400px";
<svg class="HTML_SVG" style="width:500px; height:400px;" class="HTML_SVG"></svg>

可以看到JS创建的SVG是0,0但直接用 HTML 编写的应该是 500x400。什么是"==$0"Chrome 检查器中的意思是什么?


createElement只能创建HTML元素,需要createElementNS

var svg=document.createElementNS("http://www.w3.org/2000/svg", "svg");
document.body.appendChild(svg);
svg.setAttribute("class","jscreated");
svg.style.width="500px";
svg.style.height="400px";
<svg class="HTML_SVG" style="width:500px; height:400px;" class="HTML_SVG"></svg>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

createElement("svg") 的大小是 0,0 的相关文章

随机推荐