在本文中
<div class="foo" <!-- onclick="bar();" --> /></div>
/>
正在浏览器(Chrome)和iOS设备上显示。我的第一个猜测是从/
中删除<div>
但是>
仍然在浏览器中显示,祸患就是我!
解决方案?
答案 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标签。