向HTML标签添加自定义属性有多糟糕?

时间:2010-10-19 12:19:12

标签: javascript html css dom html5

  

可能重复:
  Custom attributes - Yay or nay?

您好, 它可能是一个非常基本的问题,但我想知道是否有任何影响将自定义属性设置为HTML标签...在浏览器兼容性,搜索引擎优化,投诉等方面。

谢谢

5 个答案:

答案 0 :(得分:2)

如果您使用的是HTML5,则绝对允许您为代码添加自定义属性。这是一篇关于这个主题的文章:http://ejohn.org/blog/html-5-data-attributes/

如果您使用的是较旧的HTML或xhtml版本,那么按照权限,您不应该添加属性。但是大多数情况下浏览器都会接受它。您应该全面测试,因为它超出了规范,因此不同的浏览器可能会有不同的行为。

在xhtml中,你肯定无法添加属性,因为它会破坏文档定义而不会验证。但是(如我之前链接的文章中所述),如果需要,可以使用不同的命名空间添加它们。

答案 1 :(得分:0)

好吧,你的代码不会验证,但我怀疑它确实会导致很多问题。这些自定义属性的用途是什么?是否可以使用HTML5 data attribute进行复制?

(请不要“HTML5尚未就绪”回复)

答案 2 :(得分:0)

验证只会带来问题。您可以根据需要添加任意数量的属性,但它们不会通过验证测试。

正如其他人所说,默认情况下不会识别它们,您可能需要编写自己的javascript或能够阅读它们的东西。

答案 3 :(得分:0)

在大多数情况下,您要向不是标准标记或CSS的HTML添加属性,而是希望存储JavaScript用于交互的数据。查看jQuery.data()功能,这可能会为您提供所需内容。

http://api.jquery.com/jQuery.data/

答案 4 :(得分:-3)

通常,如果您在HTML元素上设置自己的属性,则必须构建一个了解这些属性的渲染器(并确保您的用户具有渲染器)。

通常,这意味着您提供了解新属性的javascript。唯一的缺点是,要提供HTML,您还需要提供您的JavaScript;你不能将这两者分开。