我想要一些换行文字。根据这篇文章的建议,我创建了一个 foreignObject 并在它后面附加了一个“p”元素。
我的文字根本不显示。
现在,当我在标记中执行完全相同的操作时,它会显示(我只是将生成的 svg 代码放入 svg 主体中)。
哎呀,如果我正确转到 devtools,右键单击 svg,选择“编辑为 html”并在右</svg>大括号前插入一个新行,我的文本就会显示出来。
是什么赋予了?
代替
.append('p')
.attr('xmlns', 'http://www.w3.org/1999/xhtml')
Run Code Online (Sandbox Code Playgroud)
和
.append('xhtml:p')
Run Code Online (Sandbox Code Playgroud)
在 javascript 中创建节点时,命名空间是特殊的东西,不能被视为属性。d3 使用上述语法来应对。