CSS hack技术的简介
不同浏览器在混杂模式下的行为差异非常大,如果不使用某些hack技术,跨浏览器的行为就没有一致性可言。
hack技术主要就是为了某些浏览器特定设置的。针对不同的浏览器写不同的CSS code的过程,就叫CSS hack。
写在CSS中,里边可以嵌套style和html代码;不可以写在style中。
混杂模式:HTML Doctype 如果文档开始没有发现文档类型声明或者声明错误,则所有的浏览器会默认开启混杂模式。
CSS Hack常见的有三种形式:CSS属性Hack、CSS选择符Hack以及IE条件注释Hack, Hack主要针对IE浏览器。
1.属性级Hack:比如IE6能识别下划线”_”和星号” * “但不能识别下划线”_”,而firefox都不能识别。
/* CSS属性级Hack */
color:red; /* 所有浏览器可识别*/
_color:red; /* 仅IE6 识别 */
*color:red; /* IE6、IE7 识别 */
+color:red; /* IE6、IE7 识别 */
*+color:red; /* IE6、IE7 识别 */
[color:red; /* IE6、IE7 识别 */
color:red9; /* IE6、IE7、IE8、IE9 识别 */
color:red; /* IE8、IE9 识别*/
color:red!important; /* IE6 不识别!important*/
2.选择符级Hack:比如IE7能识别*+html .class{}或者