<!-- <script type="text/javascript">/*<![CDATA[*/ c-- ;//]]></script> -->
当我在纯 html 页面的
部分中有上述行时,Firefox 3.5.5 会将尾随 --> 呈现为文本。如果我将 c-- 更改为 c- 则不会。有什么想法吗?由于经过处理的非常大的脚本,我的页面上出现了一个工件。我可以将语句更改为 c-=1 并暂时避免该问题,但是......我想知道哪个位/字节正在咬我的 a$$。
这是由于 Firefox 严格执行 SGML(HTML 所基于的)注释。仅当文档以标准模式(即存在 DOCTYPE)加载时才会发生这种情况。
首先<!
开始发表评论。首先--
进入一个部分,其中>
允许使用字符。第二--
(在你的脚本中)留下以下部分>
允许使用字符。这>
在......的最后</script>
然后结束评论。下列-->
因此不再是评论的一部分并呈现为文本。
See http://www.howtocreate.co.uk/SGMLComments.html获取有关该问题的全面指南。
还值得注意的是HTML 4 规范说“作者应该避免在注释中放置两个或多个相邻的连字符”并且HTML 5 规范表示注释不得“包含两个连续的 U+002D 连字符减号 (--)”。
正如您所发现的,解决方案是不包括--
在评论中间。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)