[b]什么是CSS hack?[/b]
是一种改善CSS在不同浏览器下的表现形式的技巧与方法。
CSS hack技术是通过一些浏览器特殊或者不支持的语句,使一个CSS样式能够被浏览器解析或者不能解析的方法实现的。
用属性选择符来区分IE6及以下浏览器 与 Firefox浏览器。
子对象选择符
注: html > #content子对象选择符的CSS hack原来是针对Firefox 与IE系列的区分设计的,但由于IE7已经支持使用 > 进行子对象选择,因此不再推荐作为IE 与 Firefox的区别设计用hack.
+号hack
+号hack方法是最近流行的一种CSS hack,非常简单也易于管理,+号用于区分IE系列浏览器与其他浏览器。
在相同的属性设置下,带有+号的属性只能在IE下运行,包括IE5,IE6,IE7。
_号hack
到目前为止,IE7还不支持下划线的属性写法,因此我们可以结合上面的使用方式,增加对IE7的hack设置。
是一种改善CSS在不同浏览器下的表现形式的技巧与方法。
CSS hack技术是通过一些浏览器特殊或者不支持的语句,使一个CSS样式能够被浏览器解析或者不能解析的方法实现的。
用属性选择符来区分IE6及以下浏览器 与 Firefox浏览器。
span.content{color:blue;}
span[class=content]{color:red;}
/*在IE6及以下浏览器中,class为content的span对象的字体颜色为blue;
而同一对象在Firefox中则将使用第二段样式代码,即字体为红色!*/
子对象选择符
span.content{color:blue;}
span>.content{color:red;}
/*在IE6及以下浏览器中,class为content的span对象的字体颜色为blue;
而同一对象在Firefox中则将使用第二段样式代码,即字体为红色!*/
注: html > #content子对象选择符的CSS hack原来是针对Firefox 与IE系列的区分设计的,但由于IE7已经支持使用 > 进行子对象选择,因此不再推荐作为IE 与 Firefox的区别设计用hack.
+号hack
+号hack方法是最近流行的一种CSS hack,非常简单也易于管理,+号用于区分IE系列浏览器与其他浏览器。
在相同的属性设置下,带有+号的属性只能在IE下运行,包括IE5,IE6,IE7。
#content { width:500px;
+width:480px; /*IE可执行*/
}
_号hack
到目前为止,IE7还不支持下划线的属性写法,因此我们可以结合上面的使用方式,增加对IE7的hack设置。
#content { width:200px; /*Mozilla Firefox可执行*/
+width:480px; /*IE7 可执行*/
_width:400pxl /*IE6 可执行*/
}