为什么HTML注释中的双连字符无效?

时间:2014-10-28 02:45:46

标签: html html5 web-standards

评论中的标准模式HTML forbids double hyphens

<!-- This is a perfectly valid comment - I think. -->
<!-- Invalid comment -- definitely. -->

还有三个额外的限制,例如这些无效的例子:

<!--> invalid -->
<!---> invalid -->
<!-- invalid --->

为什么还要指定所有这些小边缘情况呢?特别是,为什么禁止双连字符?

1 个答案:

答案 0 :(得分:9)

  

[定义:注释可能出现在其他文档之外的任何位置   标记;此外,它们可能出现在文档类型中   在语法允许的地方声明。他们不属于   文件的字符数据; XML处理器可以但不必成功   应用程序可以检索注释文本。对于   兼容性,字符串“ - ”(双连字符)不得出现在   注释。]不得在其中识别参数实体引用   评价。

语法不允许以---&gt;

结尾的评论

它似乎是XML的一个特性,仅用于确保XML与SGML保持兼容 http://www.w3.org/TR/REC-xml/#sec-comments