在 HTML5 中,元素可以将任意元数据存储在名称以 data-
开头的 XML 属性中,例如 <p data-myid="123456">
。这也是 SVG 规范的一部分吗?
在实践中,这种技术在很多地方都适用于 SVG 文档。但我想知道它是否是官方 SVG 规范的一部分,因为该格式足够年轻,浏览器之间仍然存在很多不兼容,尤其是在移动设备中。因此,在提交代码之前,我想知道我是否可以期待 future 的浏览器能够支持这一点。
我从工作组邮件列表中发现 this message 说他们“期望 [他们] 会”支持它。这成为官方了吗?
最佳答案
虽然其他答案在技术上是正确的,但它们忽略了 SVG 为 data-*
提供替代机制的事实。 SVG allows any attribute and tag 被包括在内,只要它不与现有的冲突(换句话说:你应该使用命名空间)。
要使用此(等效)机制:
mydata:id
而不是 data-myid
,像这样: <p mydata:id="123456">
<svg xmlns:mydata="http://www.myexample.com/whatever">
编辑: SVG2 ,当前 W3C 候选建议(2018 年 10 月 4 日),将与 0x2518122133 相同(没有 HTML 命名空间)。不过,要获得广泛的支持还需要一些时间。感谢@cvrebert 提供 support
data-
directly 。关于svg - SVG 文档是否支持自定义数据属性?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15532371/