2011-06-10 53 views
6

所以我在那里有很多的地方,如Firefox 3的HTML注释问题

我注意到,当你写HTML注释写了一个网站:

  <div>hello</div> 
      <!-- COMMENT --------------- //--> 
      <div>hello2</div> 

只有hello2节目。如果在末尾没有输入破折号:

 <div>hello3</div> 
     <!-- COMMENT --------------- --> 
     <div>hello4</div> 

然后打印出hello3和hello4。现在,有没有办法使我的工作如何实现,而不需要通过整个网站并更改所有评论? 顺便说一句,它显示在所有浏览器罚款,包括Firefox 4甚至IE浏览器。该问题仅发生在FF 3.6

+0

我明白,你有什么应该工作,但是你应该学会不要使用一个字符,注释语法特殊,像你“ - ”,申请间隔并根据您的意见进行格式化。而是使用像'#'之类的字符。 – slandau 2011-06-10 21:10:57

+0

你能定义你的目标是什么吗? – colinross 2011-06-10 21:11:17

回答

27

该评论是由序列--开始和完成的。

<!-- COMMENT --------------- //--> 

表示:

  • 开始评论
  • 空间
  • COMMENT
  • 空间
  • 结束注释
  • 开始评论
  • 结束注释
  • 开始评论
  • 结束注释
  • 开始评论
  • 结束注释
  • 冲刺空间斜线斜线(评论外!)
  • 开始评论

还有一个原因,the HTML specification says

常见错误是在评论中包含一串连字符(“---”)。作者应避免在注释中放置两个或多个相邻的连字符。


现在,有没有办法对我来说,使这项工作是如何suppposed不经过整个网站去和更改所有的评论?

No.

顺便说一句,它显示在所有的浏览器,包括Firefox 4甚至IE罚款。这个问题只发生在FF 3.6

太多坏作者取决于一些浏览器如何处理注释意味着浏览器供应商已经放弃尝试正确实现注释的错误。

的Mozilla并没有放弃,直到之后的Firefox 3.6

+0

好的。感谢大家。我想我会替换所有这些。 – odle 2011-06-11 16:01:17

+0

这是一个非常有趣的方面,它试图将调试信息打印到HTML注释中,或者注释掉用户生成的标记的结果。您必须在文本上运行特殊的转义函数以确保它不包含 - 对。 – phyzome 2012-03-10 19:53:38