CSS Hack原理是通过不同浏览器自身所带有的特别标识符以及CSS中优先级的机制来实现不同浏览器里CSS样式兼容性的问题。
一、css hack技术(CSS类内部的Hack:是指CSS属性或属性值里加上只有某个浏览器自己可以识别的特殊字符串。例如IE6和IE7都会识别在CSS里属性名称前加上“*”号的属性,但是firefox却无法识别带“*”号的属性):
body{
background:green; /* firefox下的显示 */
*background:red; /* IE6和IE7下的显示 */
}
div{
background:red;/* FF */
background:blue\0;/* OP */
background:turquoise\9;/* IE8+ */
[background:red;background:black;/* SA,CH */
*background:green; /* IE7 */
_background:yellow;/* IE6 */
}
二、html hack技术(IE的版本是8或者比8低的IE浏览器才会执行下面的样式):
<!--[if lte IE 8]> <!-- IE条件注释-->
<link src="iecss.css" rel="stylesheet" />
<![endif]-->