关于html里style标签中注释的问题

来源:互联网 发布:入门游戏鼠标知乎 编辑:程序博客网 时间:2024/05/22 12:46
在Dreamweaver自动生成的网页中,head中的样式表往往是这样的形式:
 

<style type="text/css">
<!--

......
-->
</style>

 

   在样式表的开头和结尾会自动添加一套html注释标记:<!--和-->。如果以为这个跟html的注释标记是一样,用这个写注释,会导致样式表定义失效。下面是运行效果对比:

 

css样式表的注释与html的注释,语法不同style!----/style - luguo.08 - 路过人生

 

 

   当<!--后面加上字之后,下面的内容就全被忽略了,直到</style>结束。

 

   这是一个很容易被忽视的低级错误。原因很简单,CSS的注释语法是:

 

/ * ...... * /

 

   而不是:

 

<!--

......

-->

 

   后者是正儿八经的html语法。两者不是一回事儿。

 

   那么,为什么自动生成的style中要有这么一对html的注释标记呢?

 

   这是为了兼容老版本的浏览器。老的浏览器不支持style,所以遇到style时,会把style样式单的内容显示在页面上。但是老版本的浏览器认识html的注释标记,所以加上标记后,这部分内容就会被当作注释忽略掉,样式单也就不会在页面上显示了。

 

   而支持style的浏览器,则会忽视<!--标记,从而正常使用样式单。大概这也是为啥样式表中的注释要换成标记的原因之一吧。

 

上例的html源代码(简化版):

 

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
#PageBox  {
......

 }
-->
<!--这里加上字
#PageBox2  {
......

 }
-->
</style>

</head>

<body>
<div id="PageBox">
......

</div>
<p>(为了方便浏览,这里加了很多&lt;p&gt;&amp;nbsp;&lt;/p&gt;,</p>
<p>不然第二个&lt;div&gt;的内容就要和第一个贴在一起了)</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>

<div id="PageBox2">
......

</div>
</body>
</html>

0 0
原创粉丝点击