有没有一种方法可以使用行首的转义序列来注释HTML中的单行?
类似于在其他编程语言中使用#
或//
这样的符号吗?还是说<!-- ... -->
是在HTML中唯一可用的注释选项?
来自HTML注释:
文本和评论以此结束。 还有一个"由于HTML是官方的SGML应用程序,因此在HTML文档中使用的注释语法实际上是SGML注释语法。不幸的是,这种语法一开始有点不清楚。
SGML注释的定义基本上如下:
注释声明以这意味着以下所有内容都是合法的SGML注释:<!
开头,后跟零个或多个注释,然后是>
。 注释以"- -
"开头和结尾,并且不包含任何"- -
"的出现。请注意,“空”注释标记,只有“
<!--Hello-->
<!--Hello -- -- Hello-->
<!---->
<!------ Hello -->
<!>
- -
”字符,应始终具有四个“-
”字符的倍数才合法。(是的,<!>
也是合法的注释-它是空注释)。并非所有HTML解析器都能正确地处理此问题。例如,“
<!------> hello-->
”是一个合法的注释,您可以通过上面的规则进行验证。它是具有两个注释的注释标记;第一个为空,第二个包含“> hello”。如果您在浏览器中尝试它,您会发现文本被显示在屏幕上。这可能有两个原因:
- 浏览器看到“>”字符,并认为注释在那里结束。
- 浏览器看到“
-->
”字符并认为注释在那里结束。
--
"序列的问题。 有些人习惯于在源代码中使用类似"<!-------------->
"这样的分隔符。不幸的是,在大多数情况下,"-
"字符的数量不是四的倍数。这意味着尝试正确处理它的浏览器实际上会在这里搞错,并隐藏文档的其余部分。因此,请使用以下简单规则来组成有效且被接受的注释:
HTML注释以"<!--
"开头,以"-->
"结尾,并且注释中不包含"--
"或">
"。
<!>
是一个有效的注释。不过基于兼容性考虑,我会避免使用这样的东西。 - Matti Virkkunen<!--
开头,以-->
结尾,并且文本不能以>
或->
开头,不能包含--
,也不能以-
结尾。但是对于解析无效注释,浏览器可以遵循许多规则。 - Robert<!-- ... -->
" 是HTML中唯一的注释语法。<!-- -->
。它可以用作单行注释或双行注释,具体取决于开发人员。<!--
开头,以-->
结尾。就是这么简单。您不应使用其他格式,即使注释格式是合法的或不合法的,也要避免任何兼容性问题。<!------> hello-->
是一个完全有效的注释。然而,由于开发人员不知道或不遵循标准(正如digitaldreamer指出的那样),我还没有找到一个正确实现(即按照规范)的浏览器。-- >
像-->
一样关闭注释。