我正在为我的客户实现一个系统,每当抛出特定错误时将跟踪元素附加到 DOM(它只需要在 data-trkError 属性中具有特定值)。我的第一个想法是使用
<span data-trkError="BLAH" style="display: none;"></span>
但后来我突然想到,这在直觉上感觉就像meta
标签应该用于什么。但是,这几乎需要附加到 DOM 中的特定 div 中,即在正文中。这是一个问题吗?关于正文树中的元标记,是否有任何违反标准或非最佳实践的内容?
干杯
我正在为我的客户实现一个系统,每当抛出特定错误时将跟踪元素附加到 DOM(它只需要在 data-trkError 属性中具有特定值)。我的第一个想法是使用
<span data-trkError="BLAH" style="display: none;"></span>
但后来我突然想到,这在直觉上感觉就像meta
标签应该用于什么。但是,这几乎需要附加到 DOM 中的特定 div 中,即在正文中。这是一个问题吗?关于正文树中的元标记,是否有任何违反标准或非最佳实践的内容?
干杯
我同意这meta
比空的更合适span
。但是(即使您可以在 中使用它们body
),请注意您不能只使用自定义meta
关键字。在 HTML5 中,只有定义/注册的值是有效的。
但是,如果它们用于 Microdata 或 RDFa,则可以meta
在 中包含元素。body
例如,RDFa扩展了HTML5:
如果
@property
RDFa 属性出现在link
or元素上,那么如果在文档meta
的 of 中使用,它们必须被视为符合要求。body
更具体地说,当link
或meta
元素包含 RDFa@property
属性并在body
HTML5 文档中使用时,它们必须被视为流内容。
因此,您可以为元数据创建(或重用现有)词汇表。但是,根据您的用例,这可能是矫枉过正。
作为替代span
我将元素script
用作数据块:
该
script
元素允许作者在他们的文档中包含动态脚本和数据块。该元素不代表用户的内容。
例如:
<script type="text/plain"> <!-- or whichever MIME type suits your need -->
<!-- your data -->
<!-- you could of course use data-* attributs on this script element, too -->
</script>
<meta>
-tag 是4.2 Document metadata的一部分。因此它只能出现在<head>
文档的 - 部分。您的解决方案使用一个<span>
或一个<div>
甚至是多个错误的列表就可以满足您的目的。