正确的DOCTYPE ...自定义属性和非标准标记

时间:2009-09-09 03:25:18

标签: html dom xhtml doctype

好吧,不要误会我的意思,我非常喜欢网络标准的想法......用严格的XHTML 1.0编写并验证了许多页面 - 然而,网络正在不断发展......我使用的XML越多,实现DOM的容量,并实现大多数浏览器不关心这种或那种方式,我意识到我意识到我只想破坏约定并开始使用自定义属性。

这个示例在我当前的站点上,它在许多元素上使用“message”属性,然后jQuery匹配这些元素类型并更新页脚消息(类似于静态工具提示)。问题当然是......实际上并不支持。

我的问题是,是否有一些更广泛的spectrumed doctype允许我使用99%的XHTML和/或HTML5标准但是引入一些自定义属性?

或者我只是继续打破验证,然后跟它说地狱,因为浏览器和javascript会“得到它”吗?

2 个答案:

答案 0 :(得分:3)

如果要向文档添加额外的命名空间,DTD和XML验证的性质要求使用自定义DTD。有关如何创建自定义DTD的详细信息,请参阅A List Apart文章Validating a Custom DTDMore About Custom DTDs。我不知道这是否可以在DTD语法的范围内进行,但您可以考虑创建自己的命名空间并简单地声明“此命名空间可能包含任何内容” - 这应该为自定义数据提供一个很好的转储基础,而不会干扰XHTML解析。

答案 1 :(得分:3)

如果您对HTML5感兴趣,请确保自定义属性的名称以“data-”开头,并且它们将在HTML5验证器中验证。

否则,我只是打破验证。一旦你知道你正在做什么,XHTML 1.x验证(基于文档类型)和标记的浏览器解释(基于内容类型)远远不足以使XHTML验证可疑值。