中山php|最优网络中山做网站 中山php建站

最优良人

2012/02/24 at 17:31

CSS hack之!important;下划线,星号

星号" * " :ie6 ie7支持 hirefox不支持

下划线"_":ie6支持 ie7 firefox不支持

!important; : firefox ie7支持 ,ie6部分支持

IE6支持重定义中的!important,例如:   .yuanxin {color:#e00!important;}   .yuanxin {color:#000;}   你将会发现定义了样式class="yuanxin"时,在IE下,字体显示为红色(#e00)。   但不支持同一定义中的!important。例如:   .yuanxin {color:#e00!important;color:#000}   此时在IE6下不支持,你将会发现定义了样式class="yuanxin"时,字体显示为黑色(#000)。

 

HTML头部引用(if IE)Hack:针对所有IE:<!--[if IE]><!--您的代码--><![endif]-->,针对IE6及以下版本:<!--[if lt IE 7]><!--您的代码--><![endif]-->,这类Hack不仅对CSS生效,对写在判断语句里面的所有代码都 会生效。

选择器Hack:比如 IE6能识别*html .class{},IE7能识别*+html .class{}或者*:first-child+html .class{}。等等

浏览器优先级别:FF<IE7<IE6,CSS hack书写顺序一般为FF IE7 IE6

以: " #demo {width:100px;} "为例;

#demo {width:100px;} /*被FIREFOX,IE6,IE7执行.*/

* html #demo {width:120px;} /*会被IE6执行,之前的定义会被后来的覆盖,所以#demo的宽度在IE6就为120px; */

*+html #demo {width:130px;} /*会被IE7执行*/ ---------------

所以最后,#demo的宽度在三个浏览器的解释为:

FIREFOX:100px;

ie6:120px;

ie7:130px;

IE8 最新css hack:

"\9" 例:"border:1px \9;".这里的"\9"可以区别所有IE和FireFox.

"\0" IE8识别,IE6、IE7不能.

IE6 hack

_background-color:#CDCDCD; /* ie 6*/

IE7 hack

*background-color:#dddd00; /* ie 7*/

IE8 hack

background-color:red\0; /* ie 8/9*/

IE9 hack

background-color:blue\9\0;

标签:,
-