无效的XHTML是否可以接受?

gra*_*eds 21 xhtml markup

我注意到很多网站,包括SO,使用XHTML作为他们的标记语言,然后不遵守规范.只是浏览SO的来源,缺少段落,无效元素等的结束标记.

那么,如果工具(和开发人员)要生成无效标记,他们应该使用XHTML doctype吗?浏览器是否应该更加坚定地接受糟糕的加价?

在任何人喊出伪君子之前,我的博客有一个无效的标记涉及captha(或者我最后一次检查时),其中包括造型noscript标签.

Joh*_*usa 16

使用有效标记的原因很多.我最喜欢的是它允许你使用验证作为回归测试的一种形式,一旦错误达到某个临界质量,就可以防止相当于"delta rot"的标记导致真正的渲染问题.实际上,允许像拼写错误和错误嵌套/未封闭标签这样的"懒惰"错误来积累,这简直太草率了.有效标记是识别热情程序员的一种方法.

还有调试问题:有效标记还为您提供了一个稳定的基线,可以从中解决不可避免的跨浏览器兼容性问题.没有重视他的时间的Web开发人员应该开始调试浏览器兼容性问题,而不首先确保标记至少在语法上有效 - 并且任何其他无效标记应该有充分的理由存在.

(顺便说一句,stackoverflow.com失败了这两个测试,修复问题的建议 拒绝了.)

所有这些都说,为了回答您的具体问题,除非您计划生成有效(或至少格式良好)的标记,否则使用其中一个XHTML文档类型可能并不值得.XHTML的主要优点源于XHTML是XML,允许通过使用XML的工具和技术进行处理和转换.如果您不打算制作XHTML格式良好的XML,那么选择该doctype毫无意义.最新的HTML 4规范可能会做你需要的一切,而且它更宽容.