超文本标记语言中有效的属性分隔符是什么?

时间:2019-02-15 14:10:54

标签: html separator rfc

IE。

  • <a href="foo.com" class="bar">
  • <a/href="foo.com"/class="bar">

空格 / hrefclass之间的两个有效分隔符。

  • 在哪个RFC中定义?
  • 其他有效的属性分隔符是什么?

示例:https://jsfiddle.net/yeg58qun/

1 个答案:

答案 0 :(得分:3)

HTML几十年来一直没有在RFC文档中维护。您可以找到两个稍微不兼容的规范,一个是W3C TR,另一个是maintained by the WHATWG。大多数浏览器都遵循它们自己模糊的两者的交集。

唯一有效的属性分隔符是空格。规范中没有对此进行规范性说明,但是在验证标记时可以触发的解析错误之一称为missing-whitespace-between-attributes

  

如果解析器遇到未用ASCII空格分隔的属性(例如<div id="foo"class="bar">),则会发生此错误。在这种情况下,解析器的行为就像存在ASCII空格一样。

最后一句话还将解释为什么您的标记似乎可以按预期工作。