我非常喜欢创建新元素并将它们命名为它们。我正在制作一个带有Windows的网站,您可能已经看到了这个问题。
我可以安全地制作名为<window>
的元素吗?
在我的代码中,我有一个名为window
的元素。我想知道这个元素是否安全,因为有一个重要的DOM元素也被称为$("window")
。
我还使用jQuery选择它:<div>
。这似乎也不安全,但是它呢?
请注意:元素在CSS中设置样式,它基本上是一个像{{1}}一样的shell元素。
答案 0 :(得分:6)
不,window
不是一个安全的自定义元素标记 - 或者至少,它是自定义元素的无效标记名称,我认为这使其“不安全”。规范的custom element部分清楚地表明自定义元素的标记名称必须包含-
。 window
没有。从规范中的注释:
这些要求确保了有效自定义元素名称的许多目标:
...
...
它们包含连字符,用于命名空间并确保向前兼容性(因为将来不会将任何元素添加到包含带连字符的本地名称的HTML,SVG或MathML中)
(我的重点)
完全有可能在某个阶段,HTML可能会添加window
标记。