HTML中的单行注释

时间:2010-04-14 19:36:55

标签: html comments

有没有办法在行开头只使用转义序列在HTML中注释掉一行? 与在其他语言中使用#//类似?或者<!-- ... -->是在html中评论的唯一选择吗?

5 个答案:

答案 0 :(得分:66)

来自http://htmlhelp.com/reference/wilbur/misc/comment.html

  

由于HTML正式为SGML   应用程序,使用的注释语法   在HTML文档中实际上是SGML   评论语法。不幸的是这个   语法起初有点不清楚。

     

SGML评论的定义   基本如下:

  评论声明开始   使用<!,然后是。{   零或多条评论,然后是   >评论   开始和结束   “--”,而不是   包含任何出现的   “--”。
这个   意味着以下都是合法的   SGML评论:
  1. <!-- Hello -->
  2. <!-- Hello -- -- Hello-->   
  3. <!---->   
  4. <!------ Hello -->
  5. <!>
  注意一个“空”的注释标记,用   只是“--”字符,   应该总是有四个的倍数   “-”字符   法律。 (是的,   <!>也是合法的   评论 - 这是空评论。

  并非所有HTML解析器都能做到这一点。   例如,“<!------> hello-->”是合法的   评论,你可以用。来验证   以上规则。它是一个评论标签   两条评论;第一个是空的   第二个包含“&gt; hello”。   如果你在浏览器中试用它,你会的   发现文本显示在上面   屏幕。

有两种可能   原因:

  1.   浏览器看到“&gt;”性格和   认为评论在那里结束。
  2. 的   浏览器看到“-->”   文本并认为评论结束   那里。
还有   “--”的问题   序列。有些人有习惯   使用类似的东西   “<!-------------->”   作为其来源中的分隔符。   不幸的是,在大多数情况下,   “-”字符数   不是四的倍数。这意味着   尝试的浏览器   做得对,实际上会得到它   错误在这里实际隐藏   文件的其余部分。

对   这个原因,使用以下简单   规则有效并接受   评论:

一个HTML   评论以。开头   “<!--”,以。结尾   “-->”并没有   包含“--”或   “>”在任何地方   评论。

答案 1 :(得分:28)

不,<!-- ... -->是HTML中唯一的注释语法。

答案 2 :(得分:7)

让我们保持简单。喜欢@digitaldreamer的答案,但这可能会让初学者感到困惑。所以,我将尝试简化它。

唯一的HTML评论是<!-- -->它可以用作单行注释或双重注释,它完全取决于开发人员。

因此,HTML评论以<!--开头,以-->结尾。真的很简单。您不应使用任何其他格式,以避免任何兼容性问题,即使评论格式是否合法。

答案 3 :(得分:5)

不,您必须使用 - &gt;。

关闭评论

答案 4 :(得分:3)

TL; DR对于符合标准的浏览器,是的;但是没有符合标准的浏览器,所以没有。

根据HTML 4规范,<!------> hello-->是完全有效的评论。但是,我没有找到一个能够正确实现这一目标的浏览器(即根据规范),因为开发人员不了解或遵循标准(如digitaldreamer指出)。

您可以在w3c的网站上找到HTML4评论的定义: http://www.w3.org/TR/html4/intro/sgmltut.html#h-3.2.4

许多浏览器出错的另一件事是-- >关闭评论,就像-->一样。