css hack问题


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不能.

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


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3