建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

当前位置: 建站学 > 网页设计 > css教程 >

IE6到底支持不支持!important

时间:2011-03-29 09:32来源: 作者: 点击:
在讨论这个问题之前我们先看看下面的这段代码: <head> <metahttp-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <styletype="text/css"> #test{   &nb

在讨论这个问题之前我们先看看下面的这段代码:

<head>
<metahttp-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<styletype="text/css">
#test
{
    color
:red !important;/*IE7、FF、OP等显示红色文字*/
    color
:green;/*IE6显示绿色文字*/
}
span
{color:gray !important;}
span
{
    color
:gray !important;/*IE6将不会将文本显示为灰色(gray)*/
    color
:red;
}

</style>
</head>

<body>
<divid="test">我是即日旮旯</div>


</body>
</html>

在查看其他人这方面的文章的时候,发现很多误区,有人干脆就认为"ie都是不支持!important"这个属性的,而有的人则又认为"ie6是不支持这个属性的",呵呵,其实"ie6不是不支持,只是有个小bug",欢迎讨论,指教,在不同的意见中提高技术。

这个在FF显示器下的效果:

 

这个是在IE6下的效果:

  

  呵呵,为什么同样的代码,在不同的浏览器下的显示效果却会有这么大的差别呢?

  某些懂一些css的朋友大概会说,是ie6不支持"!important",呵呵,这话说得有些对,但是不全对,为什么呢?

  关键原因就是如果把样式改一下,

<style type="text/css">
#test {
    color:red !important;/*IE7、FF、OP等显示红色文字*/
    /
}
#test {
   color:green;/*IE6显示绿色文字*/
}
  
  
</style>

 

你会发现在ie下字体的颜色变得和在FF中一样了,而如果ie6真的不支持"!important"这个属性的话,ie下字体的颜色就应该是绿色,而不是红色,因为按照css的“就近原则”来说,字体的颜色一直都应该是绿色,而不是红色的。

但是 为什么我们把样式改了之后,字体颜色在FF和ie6下就不一样了呢,这应该是ie6下的一个bug,如果一个样式内重复设了属性,如"color:*",它就会忽略掉"!important"了。

  呵呵,这样样式CSS1就有了,但一直没有很好的发挥它的作用,但是其实,我们可以利用它来解决一些浏览器兼容性问题造成的异常,做到让页面尽量在不同浏览器之间看起来一样。

(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片