为什么样式表在评论中?

时间:2013-02-07 11:06:02

标签: html css

<style type="text/css">
<!--
.style1 {
    color: #666666;
    font-weight: bold;
}
.style8 {font-size: 12px; color: #333333; }
.style9 {
    font-size: 12px;
    font-weight: bold;
    color: #FFFFFF;
}
.style12 {font-size: 12px; font-weight: bold; color: #666666; }
.style13 {font-size: 12px; font-weight: bold; color: #0066FF; }
.style14 {
    color: #0043A8;
    font-size: 16px;
}
.style15 {color: #FFFFFF}
.style16 {color: #990000}
.style18 {color: #990000; font-size: 12px; }
.style20 {font-size: 12px; font-weight: bold; color: #575757; }
-->
</style>

上面的样式表包含在<!-- --> html注释标记中。为什么?我无法得到有效的解释;有些教程是这样做的,而有些则没有(比如http://www.w3schools.com/css/css_howto.asp,我认为这是非常有效的参考资料)

5 个答案:

答案 0 :(得分:6)

这不是评论......这是一种隐藏旧浏览器解析器(主要是IE6)的文本块的方法

与在<script>标签上使用CDATA技术相同... 保护数据的错误解析来自真正奇怪的引擎(主要是IE):)

虽然正确的方式将使用:

表示样式

<style type="text/css">
/*<![CDATA[*/
    body { color: yellow; }     
/*]]>*/
</style>
脚本

<script type="text/javascript">
//<![CDATA[
    $(function() { ... });
//]]>
</script>

在两种情况下使用CDATA正确且安全的方式注释方式只是完成相同最终结果的技巧。


现在,关于你的我认为是非常有效的参考,在指出W3Schools时,请看看:

  

http://w3fools.com/

答案 1 :(得分:2)

这是一种过时的方法,用于隐藏早于引入<style><script>标记的标准的浏览器的内容。

对这种习惯没有任何有效用途,实际上会引起更多问题而不是修复。

除非你正在开发一个生活在1990年代的人们的网站(就像w3schools的编辑一样)...不要这样做!

答案 2 :(得分:1)

这样做是为了避免在不知道<style>标记的某些(旧)浏览器中显示脚本内容。请参阅this

答案 3 :(得分:1)

对于不支持CSS /样式标记的旧浏览器来说,这是一个黑客...请参阅http://www.w3.org/TR/html4/present/styles.html#h-14.5

答案 4 :(得分:0)

很少有浏览器将non-HTML代码视为纯文本。此注释用于指导该浏览器,即代码被注释,以便browsers不会将其显示为html输出。