Html 我为什么要用“为什么?”;数据-“;在我的属性中还是标记中的破折号?
根据许多最近的HTML规范,当我们使用自定义属性(指规范中未定义的任何属性)时,我们应该在它们前面加上Html 我为什么要用“为什么?”;数据-“;在我的属性中还是标记中的破折号?,html,custom-data-attribute,custom-tag,Html,Custom Data Attribute,Custom Tag,根据许多最近的HTML规范,当我们使用自定义属性(指规范中未定义的任何属性)时,我们应该在它们前面加上data-。然而,我认为没有理由这样做(除非您需要完全有效的HTML,显然)。几乎所有当前浏览器都正确地忽略了自定义属性,这意味着除了与其他代码中同名的属性之外没有冲突,我们甚至可以忽略带有自定义前缀或类似内容的属性(如上所示)。如果有的话,还有什么好处?至少有人问过这个问题,但这两个问题都很老了 我忘了在哪里读过它,但一些指南说自定义HTML标记需要破折号,而单单词标记无效。首先,为什么?第二
data-
。然而,我认为没有理由这样做(除非您需要完全有效的HTML,显然)。几乎所有当前浏览器都正确地忽略了自定义属性,这意味着除了与其他代码中同名的属性之外没有冲突,我们甚至可以忽略带有自定义前缀或类似内容的属性(如上所示)。如果有的话,还有什么好处?至少有人问过这个问题,但这两个问题都很老了
数据
属性一样,您为它们添加前缀或后缀等,则与现有元素的冲突不应成为问题。请再次参阅我相信所有这些问题以前都被问过,但我正在把它们结合在一起。这是一个好主意吗(快,有人问Meta)?数据-*属性有两个优点:
-
的原因是:
您应该使用自己的自定义元素名称吗?现在,它是如此的新,所以不要期望它会得到完全的支持。假设它确实有效。你必须平衡额外的复杂性和好处。如果你可以不使用类名,那么就使用类名。但是,如果您需要一个全新的元素,并为该元素提供一个定制的Javascript DOM原型,那么您可能会有效地使用它。对于
数据-
#1,idk,“data”似乎是一个奇怪的选择。我想这是使用它的另一个原因,因为它在HTML代码中就像一个受伤的拇指。对于自定义的破折号
元素(这可以是它们的新名称吗?)#2,请参见我所说的数据
属性。你可以加个前缀什么的。我会更新我的问题。你链接到的那篇文章就是我想到的那篇文章。不过,“让解析器知道它不是标准元素”的理由对我来说没有意义。你能解释一下吗?浏览器将HTML代码解析成各种模型和对象,这样我们就有了一个网页。其中一些模型是幕后的,而其他部分我们可以通过Javascript和CSS进行交互。除了一些默认样式(vs)之外,许多元素之间没有太大差异。但有些确实具有特殊属性,如:,等等。一些特殊属性在幕后,例如解码视频文件,然后其中一些具有特殊的Javascript方法,例如。浏览器想知道元素是否为自定义元素的原因是,如果您定义自定义元素,它将继续查找自定义元素的自定义Javascript DOM原型。通过知道名称是custom,它就知道以后可能需要对其应用自定义Javascript原型。好的,因此标记的自定义是一种预防措施,但是像这样的数据-
有什么原因吗?而且,如果你给了它,它可能会事先知道&不知道你是否不知道,但是否有任何性能改进等。?如果你使用像AngularJS这样的东西,它能完成所有的举重任务吗?