有没有办法在行的开头仅使用转义序列来注释掉HTML中的一行?类似于使用#
还是//
其他语言?还是<!-- ... -->
用html注释的唯一选项?
Answers:
来自http://htmlhelp.com/reference/wilbur/misc/comment.html
由于HTML正式是SGML应用程序,因此HTML文档中使用的注释语法实际上是SGML注释语法。不幸的是,这种语法起初有点不清楚。
SGML注释的定义基本上如下:
一个注释声明打头这意味着以下是SGML的所有合法注释:<!
,后跟零个或更多的评论,其次是>
。一个注释 开始和结束以“--
”,并且不包含任何出现“--
”。请注意,只有“
<!-- Hello -->
<!-- Hello -- -- Hello-->
<!---->
<!------ Hello -->
<!>
--
”字符的“空”注释标记应始终具有四个-
字符的倍数才合法。(是的,<!>
这也是法律评论-这是空的评论)。并非所有的HTML解析器都正确。例如,“
<!------> hello-->
”是法律注释,您可以使用上述规则进行验证。这是一个带有两个评论的评论标签;第一个为空,第二个为“> hello”。如果在浏览器中尝试,则会发现文本显示在屏幕上。可能有两个原因:
“
- 浏览器看到“>”字符,并认为注释到此结束。
- 浏览器会看到“
-->
”文本,并认为注释到此结束。--
”序列也存在问题。有些人习惯<!-------------->
在源代码中使用“ ”之类的分隔符。不幸的是,在大多数情况下,“-
”字符的数量不是四个的倍数。这意味着试图 解决问题的浏览器实际上在这里会 出错,并实际上隐藏了文档的其余部分。因此,请使用以下简单规则来撰写有效和可接受的注释:
HTML注释以“<!--
”开头,以“ ”结尾,-->
并且注释中的任何地方都不包含“--
”或“>
”。
<!>
是一个有效的评论。我只是为了兼容性而避免这样的事情
<!-- -------blah------ -->
了我认为还可以的事情,因为开始和结束“-”。
让我们保持简单。喜欢@digitaldreamer的答案,但可能会使初学者感到困惑。因此,我将尝试简化它。
唯一的HTML注释是<!-- -->
它可以用作单行注释或双行注释,这实际上取决于开发人员。
因此,HTML注释以<!--
和开头-->
。真的就是这么简单。即使注释格式合法,也不应使用任何其他格式来避免任何兼容性问题。
不,您必须使用->关闭评论。
TL; DR对于兼容的浏览器,是的;但是没有兼容的浏览器,所以没有。
根据HTML 4规范,<!------> hello-->
是完全有效的注释。但是,由于开发人员不了解或不遵循标准(如digitaldreamer指出的那样),因此我没有找到能够正确(即按照规范)正确实现此功能的浏览器。
您可以在w3c的网站上找到HTML4注释的定义:http : //www.w3.org/TR/html4/intro/sgmltut.html#h-3.2.4
许多浏览器都会出错的另一件事是-- >
像一样关闭评论-->
。
<!-- -->
仅编号。