云水论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2652|回复: 0
打印 上一主题 下一主题

[转帖]none !important是什么意思?

[复制链接]

1788

主题

62

好友

8525

积分

管理员

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
楼主
发表于 2011-2-9 11:22:13 |只看该作者 |倒序浏览
 
css hack不知你听说过吗?
!important是一个css hack。
!important只有Ie7.0和firefox可以识别,但是Ie6.0不能够成功应用.

none!important就是让Ie7.0和firefox识别没有背景(background)或者不显示(display)。
=========================================================
important这个规则对Ie6.0,Ie7.0和Firefox能写hack,现在就来讲解这是怎么的原理:
*Ie系列能够识别, firefox 不能识别
!important只有Ie7.0和firefox可以识别,但是Ie6.0不能够成功应用.

(1)区别ie与firefox的hack为:border:2px solid #f00;*border:1px solid #f00;
(2)区别Ie6.0 与Ie7.0、firefox的hack为:border:1px solid #f00!important;border:2px solid #f00;

在(1)中,之所以把*放在后面是因为ff不识别*而导致只对它设置了一次border;而ie 系列进行了两次
border设置后,后一个属性覆盖了前一个属性,故为一像素的边框。

在(2)中,之所以把!important放在第一个border 设置,是因为它把这次border的优先级提高了,即使
后面在一次甚至在N次设置border 也无效,但是Ie6.0对这个规则不接受,而导致它应用了第二次的
border 设置,也就是第二次覆盖了第一次的这一原理, 并不是它不识别!important;所以它的border
为2 像素的红框.

这是一个简单的应用:
<html >
<head>
<meta http-equiv="Content-Type" c />
<title>无标题文档</title>
<style type="text/css">
div{
width:800px;
height:250px;
background-color:yellow!important;/*提升指定样式规则的应用优先权*/
background-color:red;
border:3px solid #000!important;/*firefox*/
*border:5px solid #f00!important;/*Ie7.0*/
border:1px solid #000;/*Ie6.0*/
}
</style>
</head>

<body>
<div>
IE6.0对important不识别;
</div>
</body>
</html>
  你的沉默明亮如灯、简单如指环。

  论坛其他名字 【云水.墨】 【淡墨瀑雪】
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|云水网 ( 鲁ICP备09069806号 )

GMT+8, 2024-6-1 19:48 , Processed in 0.023534 second(s), 19 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部