CSS Hack的原理是什么
CSS Hack大致有3种表现形式,CSS类内部Hack、选择器Hack以及HTML头部引用(if IE)Hack,CSS Hack主要针对IE浏览器。
类内部Hack:比如 IE6能识别下划线"_"和星号" * ",IE7能识别星号" * ",但不能识别下划线"_",而firefox两个都不能认识。等等
选择器Hack:比如 IE6能识别*html .class{},IE7能识别*+html .class{}或者*:first-child+html .class{}。等等
HTML头部引用(if IE)Hack:针对所有IE:<!--[if IE]><!--您的代码--><![endif]-->,针对IE6及以下版本:<!--[if lt IE 7]><!--您的代码--><![endif]-->,这类Hack不仅对CSS生效,对写在判断语句里面的所有代码都 会生效。
如何写CSS Hack
类内部Hack:
IE6 hack
_background-color:#CDCDCD;IE7 hack
*background-color:#dddd00;IE8 hack
background-color:red \0;IE9 hack
background-color:blue \9\0;选择符级Hack
* html .test{color:#090;}* + html .test{color:#ff0;}
.test:lang(zh-cn){color:#f00;}
.test:nth-child(1){color:#0ff;}
(浏览器优先级别:FF<IE7<IE6,CSS hack书写顺序一般为FF IE7 IE6 )