CSS中兼容的一面-----Hack
程序员文章站
2022-05-03 11:04:31
...
CSS中兼容的一面-----Hack技术大全 兼容范围: IE:6.0+,FireFox:2.0+,Opera 10.0+,Sarari 3.0+,Chrome 参考资料: 各游览器常用兼容标记一览表: 标记IE6IE7IE8FFOperaSarari [*+> div > Hack应用情境(二) 适用范围:IE:6.0,IE7.0,IE8.0,Firefox之间的兼容 实例说明: 大家很容易的可以看出这是情境(一)的加强版,适用于更广泛的环境。其实情境(一)中也已经做到了把火狐与IE游览器区分开来了,现在我们要做的是把火狐从其它游览器中再次识别出来。大家仔细看下代码,大家会发现其实游览器识别是很简单的。火狐如何识别?对了,IE中对伪类支持不广泛,所以伪类是个不错的途径。(.yourClass,x:-moz-any-link, x:default)注意,这个区分伪类往往IE7也能识别,所以最好还需要把IE7单独识别出来,且此方法对ff3.6 已无效,firefox的区分可以使用@-moz-document url-prefix(){} 实例代码: .bb{ height:32px; /*所有识别*/ /*IE6、7、8识别*/ +/*IE6、7识别*/ _/*IE6识别*/ } .bb, x:-moz-any-link, x:default{}/*IE7 firefox3.5及以下 识别 */ @-moz-document url-prefix(){.bb{}}/* 仅firefox 识别 */ * +html .bb{}/* 仅IE7 识别 */ /*一个用于展示的class为bb的div标签*/ div > Hack应用情境(三) 适用范围:IE:6.0,IE7.0,IE8.0,Firefox,Safari(Chrome)之间的兼容 实例说明: 我们现在将再次对我们的CSS进行加强了,使其能识别Safari(Chrome)游览器。这是基于它们的内核webkit来识别的,用法为@media screen and (-webkit-min-device-pixel-ratio:0) 实例代码: .bb{ height:32px; /*所有识别*/ /*IE6、7、8识别*/ +/*IE6、7识别*/ _/*IE6识别*/ } @media screen and (-webkit-min-device-pixel-ratio:0){.bb{/*safari(Chrome) 有效 */ .bb, x:-moz-any-link, x:default{}/*IE7 firefox3.5及以下 识别 */ @-moz-document url-prefix(){.bb{}}/*仅firefox 识别*/ * +html .bb{}/* 仅IE7 识别 */ /*一个用于展示的class为bb的div标签*/ div > Hack应用情境(四) 适用范围:IE:6.0+,FireFox:2.0+,Opera 10.0+,Sarari 3.0+,Chrome全兼容 实例说明: 实例的具体代码在下面实例代码中已经列出,具体效果如此页面的顶端部分效果,您可以通过不同游览器检测该效果。这次我们基本把所有的主流游览器都兼容了,大家来看下代码。Opera的识别有一部分归功于“\0”标记,这个标记只被IE8和Opera识别,特殊的标记往往造就的是我们更广泛的hack手段。下例的代码比较完整,大家可以选择参考。 实例代码:
IE6 | IE7 | IE8 | Firefox | Opera | Safari(Chrome) | ||||||
IE6 | IE7 | IE8 | Firefox | Opera | Safari(Chrome) |
Firefox的辨别色是浅绿色,Firefox是很强大的游览器。
Safari和Chrome的辨别色是金黄色,Safari和Chrome使用的都是Webkit内核