我一直在使用 SVG 进行一些工作,并且一直在从头开始编写它并使用 javascript(包括 d3js)生成它。
我刚刚注意到的一件事是,当我在 javascript 中创建一个新元素时,即使用
var pathNode = document.createElementNS(svgns,"path");
var pathElement = svg.appendChild(pathNode);
生成的 HTML 是<path></path>
. 我检查了很多 D3 演示,这也是 D3 生成 HTML 的方式。
在我读过的所有关于 SVG 的文档中,我从未见过任何提及以这种方式编写 SVG 元素的内容。浏览器是否同样对待这两者?在我测试过的所有浏览器中,SVG 显示正确,并且 W3C 验证器验证了这两个版本,所以看起来确实如此,但任何人都可以澄清这一点让我安心吗?