css hack问题

(编辑:jimmy 日期: 2024/9/21 浏览:2)

ie5 hack, ie 6 hack, ie 8 hack,ie 9 我没用,暂时也没接触过9的hack,随着浏览器的更新(而且换代越来越快),是不是我有写不完的hack,还是说高手从不写hack。

IE7能识别*,也能识别!important;   

FF不能识别*,但能识别!important;   

IE6 IE7 FF   * √ √ ×   !important × √ √   

浏览器优先级别: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、IE7可以识别.IE8、FireFox不能.   

"_" IE6可以识别"_",IE7、IE8、FireFox不能.

经验可以积累,但梦想永远不能磨灭