浏览器CSS兼容问题
2012-09-06 00:00
225 查看
所谓 CSS Hack,是指在 CSS 代码中嵌入诸如 *,*html 等代码,方便于独立控制某种浏览器的具体样式。比如有些 CSS Hack 只能被 IE6 或 IE7 识别,而 Firefox 等浏览器则不能识别。这样一来可以有效控制 CSS 在不同浏览器的表现,避免撰写多个 CSS 文件。
芒果在这里大致整理了常用 CSS Hack 的写法,帮助你更好地控制页面呈现:
1. * 符号
IE 浏览器能识别 * 符号,但其他浏览器诸如 Firefox、Opera、Chrome 等不能识别 * 符号。
例:在 Firefox 和 IE 中呈现不同的文字颜色:
2. !important
IE7 不但能识别 * 符号,还能识别 !important,而 IE6 只能识别前者。
例:在 IE6 和 IE7 中呈现不同的文字颜色:
综合 1 和 2,利用上述浏览器特性,可在 CSS 中判别 Firefox,IE7,IE6 并加载不同样式。
例:在 Firefox,IE7,IE6 中呈现三种不同文字颜色:
4. *html 和 *+html
IE 核心的浏览器能识别*html 和*+html,而 Firefox 等非 IE 核心浏览器不能识别。
例:在 Firefox,IE7,IE6 中呈现三种不同文字颜色:
芒果在这里大致整理了常用 CSS Hack 的写法,帮助你更好地控制页面呈现:
1. * 符号
IE 浏览器能识别 * 符号,但其他浏览器诸如 Firefox、Opera、Chrome 等不能识别 * 符号。
例:在 Firefox 和 IE 中呈现不同的文字颜色:
color:red;*color:blue; //在 Firefox 等非 IE 核心浏览器中,文字呈现红色;而 IE 中呈现蓝色。
2. !important
IE7 不但能识别 * 符号,还能识别 !important,而 IE6 只能识别前者。
例:在 IE6 和 IE7 中呈现不同的文字颜色:
color:red !important;color:blue; //在 IE7 浏览器中,文字呈现红色;而 IE6 中呈现蓝色。
综合 1 和 2,利用上述浏览器特性,可在 CSS 中判别 Firefox,IE7,IE6 并加载不同样式。
例:在 Firefox,IE7,IE6 中呈现三种不同文字颜色:
color:blue;*color:red !important;*color:green; //在 Firefox 中,文字呈现蓝色,在 IE7 浏览器中,呈现红色;而 IE6 中呈现蓝色。
4. *html 和 *+html
IE 核心的浏览器能识别*html 和*+html,而 Firefox 等非 IE 核心浏览器不能识别。
例:在 Firefox,IE7,IE6 中呈现三种不同文字颜色:
#div {color:red;} *html #div {color:green;} *+html #div{color:blue;} //第一句 Firefox 等可以正常识别,所以这些浏览器中文字呈红色; //第二句 IE6 能识别并执行,用于针对 IE6 独立写的样式,文字绿色; //第三句只有 IE7 才能正确识别,而 IE6 和其他非 IE 核心浏览器不能,文字呈蓝色。
相关文章推荐
- 利用IE/FF的不同识别CSS来使用浏览器兼容问题
- 最全的CSS浏览器兼容问题整理(IE6.0、IE7.0 与 FireFox)
- [ZT]最全的CSS浏览器兼容问题整理(IE6.0、IE7.0 与 FireFox)
- 最全的CSS浏览器兼容问题
- 收集的CSS浏览器兼容问题大全(转载)
- 最全的CSS浏览器兼容问题
- CSS浏览器兼容问题
- 【Normalize.css】源码注释翻译&浏览器css兼容问题的理解
- div+CSS浏览器兼容问题整理(IE6.0、IE7.0 ,ie8 , FireFox)
- ie和firefox浏览器css兼容问题
- TM_CSS浏览器兼容问题总结
- 各浏览器CSS兼容问题
- CSS浏览器兼容问题整理(IE6.0、IE7.0+ 与 FireFox)
- 【转】最全的CSS浏览器兼容问题
- CSS解决多浏览器兼容问题
- 最全的CSS浏览器兼容问题
- 汉子英文同行 连续英文不折行断行 的问题 兼容FIREFOX浏览器CSS
- FireFox浏览器和IE浏览器下CSS兼容问题
- css ul li 的使用及浏览器兼容问题
- CSS浏览器兼容问题集(二)