HTML(php,css,JS) - 忽略关闭标记或内联注释

时间:2011-05-23 18:30:48

标签: php html5 inline comments

在本文中

<div class="foo" <!-- onclick="bar();" --> /></div>

/>正在浏览器(Chrome)和iOS设备上显示。我的第一个猜测是从/中删除<div>但是>仍然在浏览器中显示,祸患就是我!

解决方案?

4 个答案:

答案 0 :(得分:1)

编辑:

在与OP讨论之后,发现仍然需要onclick方法,因此解决方案是使用<div class="foo" onclick="bar();"> </div>而不使用“注释代码”。

原始回答:

尝试 - <div class="foo" <?php /* onclick="bar();" */ ?> > </div>,这将导致<div class="foo"> </div>。请注意,整个事情都是由PHP过滤的。

对于JSP / ASP,请使用<%-- --%>样式注释。 <div class="foo" <%-- onclick="bar();" --%> > </div>

答案 1 :(得分:0)

删除评论。我的猜测是浏览器将注释解释为结束标记。只需将整个div放在评论中,下面有不同的版本。

答案 2 :(得分:0)

标签内部禁止注释,因此您的HTML错误。

如果您想要评论,请将其放在标记结尾之后:

<div class="foo"> <!-- onclick="bar();" --> </div>

此外,您不应在div的开始标记的末尾添加/个字符。

在HTML(5之前)中,它会关闭开始标记,因此您可以向数据添加>字符。大多数浏览器都不尊重这个(你的问题是由于评论)。

在HTML兼容的XHTML中禁止使用。

在XHTML中,它使div成为自动关闭标记,因此结束标记没有匹配的开始标记。

在HTML 5中,禁止使用IIRC。

答案 3 :(得分:0)

评论(<!-- -->)是浏览器应该忽略的标记。

在这种情况下,您的标记无效,因为您以无效的方式在标记中嵌套标记。您需要删除“onclick="bar();”或将整个注释移出开头div标签。