css hack问题
(编辑:jimmy 日期: 2024/11/1 浏览: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不能.
经验可以积累,但梦想永远不能磨灭