识别CssHack技巧-论浏览器的兼容性

csshack  时间:2021-04-22  阅读:()

兼容范围

IE:60+ FireFox:20+ Opera 100+ Sarari 30+ Chrome

参考资料

各游览器常用兼容标记一览表:

以上bb可更换为其它样式名

注意点

网上很多资料中常常把! important也作为一个hack手段其实这是一个误区。 ! important常常被我们用来更改样式而不是兼容hack。造成这个误区的原因是IE6在某些情况下不主动识别! important,以至于常常被人误用做识别IE6的hack。可是大家注意一下 IE6只是在某些情况下不识别ie6下 同一个大括号里对同一个样式属性定义其中一个加important则important标记是被忽略的例

{background:red! im portant;background:green;} ie6下解释为背景色green其它浏览器解释为背景色red如果这同一个样式在不同大括号里定义其中一个加important则important发挥正常作用例div{background:red! important}div{background:green}这时所有浏览器统一解释为背景色red。 

实例讲解

Hack应用情境一

适用范围 I E:6.0,I E7.0,I E8.0之间的兼容

实例说明

此例中我们使用了渐进识别的方式从总体中逐渐排除局部。首先巧妙的使用“\9”这一标记将

IE游览器从所有情况中分离出来。接着再次使用“+”将IE8和IE7、 IE6分离开来此时我们的IE8

已经独立识别。

实例代码bb{height:32px;background-color:#f1 ee18;/*所有识别*/background-color:#00deff\9; /*IE6、 7、 8识别*/

+background-color:#a200ff;/*IE6、 7识别*/

_background-color:#1e0bd1 ;/*IE6识别*/}

/*一个用于展示的class为bb的div标签*/

<divclass="bb"></div>

Hack应用情境二

适用范围 I E:6.0,I E7.0,I E8.0,F i refox之间的兼容

实例说明

大家很容易的可以看出这是情境一的加强版适用于更广泛的环境。其实情境一中也已经做到了把火狐与IE游览器区分开来了现在我们要做的是把火狐从其它游览器中再次识别出来。大家仔细看下代码大家会发现其实游览器识别是很简单的。火狐如何识别对了 IE中对伪类支持不广泛所以伪类是个不错的途径。 (yourClass,x:-moz-any-l ink,x:default)注意这个区分伪类往往IE7也能识别所以最好还需要把IE7单独识别出来且此方法对ff36已无效 fi refox的区分可以使用@-moz-document url-prefix(){}

实例代码bb{height:32px;background-color:#f1 ee18;/*所有识别*/background-color:#00deff\9; /*IE6、 7、 8识别*/

+background-color:#a200ff;/*IE6、 7识别*/

_background-color:#1e0bd1 ;/*IE6识别*/

}bb,x:-moz-any-l ink,x:default{background-color:#00ff00;}/*IE7 firefox35及以下识别*/

@-moz-document url-prefix(){bb{background-color:#00ff00;}}/*仅firefox识别*/

*+html bb{background-color:#a200ff;}/*仅IE7识别*/

/*一个用于展示的class为bb的div标签*/

<divclass="bb"></div>

Hack应用情境三

适用范围 IE:6.0,I E7.0,I E8.0,Firefox,Safari(Chrom e)之间的兼容

实例说明

我们现在将再次对我们的CSS进行加强了使其能识别Safari(Chrome)游览器。这是基于它们的内核webkit来识别的用法为@media screen and(-webkit-min-device-pixel-ratio:0)

实例代码bb{height:32px;background-color:#f1 ee18;/*所有识别*/background-color:#00deff\9; /*IE6、 7、 8识别*/

+background-color:#a200ff;/*IE6、 7识别*/

_background-color:#1e0bd1 ;/*IE6识别*/

}

@media screen and(-webkit-min-device-pixel-ratio:0){bb{background-color:#f1 ee18}}{}/*safari(Chrome)有效*/bb,x:-moz-any-l ink,x:default{background-color:#00ff00;}/*IE7 firefox35及以下识别*/

@-m oz-document url-prefix(){bb{background-color:#00ff00;}}/*仅firefox识别*/

*+html bb{background-color:#a200ff;}/*仅IE7识别*/

/*一个用于展示的class为bb的div标签*/

<divclass="bb"></div>

Hack应用情境四

适用范围 IE:6.0+ Fire Fox:2.0+ Opera 10.0+ Sarari 3.0+ Chrome全兼容

实例说明

实例的具体代码在下面实例代码中已经列出具体效果如此页面的顶端部分效果您可以通过不同游

览器检测该效果。这次我们基本把所有的主流游览器都兼容了大家来看下代码。Opera的识别有一部

分归功于“\0”标记这个标记只被IE8和Opera识别特殊的标记往往造就的是我们更广泛的hack

手段。下例的代码比较完整大家可以选择参考。

实例代码

<!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1 0 Transitional//EN"

"http://wwww3 org/TR/xhtml1/DTD/xhtml1-transitional dtd">

<html xmlns="http://wwww3 org/1999/xhtml" lang="gb2312">

<head>

<meta http-equiv=Content-Type content="text/html ;charset=gb2312"/>

<style type="text/css">

bb{height:32px;background-color:#f1 ee18;/*所有识别*/background-color:#00deff\9; /*IE6、 7、 8识别*/+background-color:#a200ff;/*IE6、 7识别*/_background-color:#1 e0bd1/*IE6识别*/}

@media screen and(-webkit-min-device-pixel-ratio:0){bb{background-color:#f1 ee18}}{}/*

Safari(Chrome)有效*/

@mediaal l and(min-width:0px){ bb{background-color:#f1ee18;/*operaand Safari(Chrome)andfirefox*/background-color:#4cac70\0;}/*仅Opera有效*/ }{}bb,x:-moz-any-l ink,x:default{background-color:#4eff00;/*IE7、 Firefox35及以下识别*/}

@-moz-document url-prefix(){bb{background-color:#4eff00;/*仅Firefox识别*/}}

*+html bb{background-color:#a200ff;}/*仅IE7识别*/

/*一般情况下我们区分IE7只用+background-color配合_background-color就行了如果必须写bb,x:-moz-any-l ink,x:default这样的代码区分Firefox35及以下则谨记此写法对IE7也有效故在其中要再重写一次+background-color或者使用*+html bb{background-color:blue;}方法仅对IE7有效。可使用@-m oz-document url-prefix(){}方法独立区分所有firefox*/browsers td{width:8%;text-al ign:center;padding:8px;}}browsercolor{color:#333;font-size:18px;font-weight:bold;}ie6{background-color:#1e0bd1}ie7{background-color:#a200ff}ie8{background-color:#00deff}firefox{background-color:#4eff00}opera{background-color:#4cac70}other{background-color:#f1 ee18;}

#tipTable td,#tipTable th{border:1 pxsol id black;width:56px;height:16px;text-al ign:center;}

#wordTable td{margin-left:8px;}

#firefoxTip{dis play:none;}

#firefoxTip,x:-moz-any-l ink,x:default{display:block;/*IE7 firefox35及以下识别*/+display:none/*再区分一次IE7*/}

@-moz-document url-prefix(){#firefoxTip{display:block;/*仅firefox识别*/}}

#ChromeTip{display:none;}

@media screen and(-webkit-min-device-pixel-ratio:0){#ChromeTip{display:block;}}{}/*safari(Chrome)有效*/

@media al l and(min-width:0px){#ChromeTip{display:none\0;}/*仅Opera有效*/}{}

</style>

</head>

<body>

<table class="browsers"width="100%"cel lspacing="0"cel lpadding="0">

<tr>

<td>I E 6</td>

<td></td>

<td>I E 7</td>

<td></td>

<td>I E 8</td>

<td></td>

<td>F i re fo x</td>

<td></td>

<td>O p e ra</td>

<td></td>

<td>Safari(Ch rome)</td>

<td></td>

</tr>

<tr class="browsercolor">

<tdclass="ie6">IE6</td>

<td></td>

<tdclass="ie7">IE7</td>

<td></td>

<tdclass="ie8">IE8</td>

<td></td>

<td cl ass="fi refox">Fi refox</td>

<td></td>

<tdclass="opera">Opera</td>

<td></td>

<tdclass="other">Safari(Chrome)</td>

<td></td>

</tr>

</ta b l e>

<divclass="bb">

<span style="display:none;display:block\0;display:none\9;">Opera的辨别色是深绿色 Opera游览器很时髦么。 </span>

<span id="firefoxTip">Firefox的辨别色是浅绿色 Firefox是很强大的游览器。 </span>

<span id="ChromeTip">Safari和Chrome的辨别色是金黄色 Safari和Chrome使用的都是Webkit内核</span>

<!--[if IE 8]>IE8的辨别色是蓝色新版IE8的功能可是不少呢。 <![endif]-->

<!--[if IE 7]>IE7的辨别色是紫色 IE7还可以凑合着用 <![endif]-->

<!--[if IE 6]>IE6的辨别色是红色不过 IE6可是有点落后了 <![endif]-->

</div>

</body>

</html>

青果云(59元/月)香港多线BGP云服务器 1核 1G

青果云香港CN2_GIA主机测评青果云香港多线BGP网络,接入电信CN2 GIA等优质链路,测试IP:45.251.136.1青果网络QG.NET是一家高效多云管理服务商,拥有工信部颁发的全网云计算/CDN/IDC/ISP/IP-VPN等多项资质,是CNNIC/APNIC联盟的成员之一。青果云香港CN2_GIA主机性能分享下面和大家分享下。官方网站:点击进入CPU内存系统盘数据盘宽带ip价格购买地...

博鳌云¥799/月,香港110Mbps(含10M CN2)大带宽独立服务器/E3/8G内存/240G/500G SSD或1T HDD

博鳌云是一家以海外互联网基础业务为主的高新技术企业,运营全球高品质数据中心业务。自2008年开始为用户提供服务,距今11年,在国人商家中来说非常老牌。致力于为中国用户提供域名注册(国外接口)、免费虚拟主机、香港虚拟主机、VPS云主机和香港、台湾、马来西亚等地服务器租用服务,各类网络应用解決方案等领域的专业网络数据服务。商家支持支付宝、微信、银行转账等付款方式。目前香港有一款特价独立服务器正在促销,...

昔日数据:香港云服务器(2G防御)、湖北云服务器(100G防御),首月5折,低至12元/月

昔日数据,国内商家,成立于2020年,主要销售湖北十堰和香港HKBN的云服务器,采用KVM虚拟化技术构架,不限制流量。当前夏季促销活动,全部首月5折促销,活动截止于8月11日。官方网站:https://www.xrapi.cn/5折优惠码:XR2021湖北十堰云服务器托管于湖北十堰市IDC数据中心,母鸡采用e5 2651v2,SSD MLC企业硬盘、 rdid5阵列为数据护航,100G高防,超出防...

csshack为你推荐
Telewizjamedia城乡居民社会养老保险人脸识别生存认证360chrome使用360急速浏览器,360chrome进程结束不了谷歌sb在谷歌里搜SB为什么结果中第一个是百度迅雷雷鸟迅雷会员每日免费抽奖,抽中迅雷的雷鸟披肩了,要钱吗morphvoxpro教程哪位大佬可以帮忙调一下morphvox pro的女声啊,我调了一天还是没调明白morphvoxpro教程morphvox是什么 morphvox怎么使用 morphvox设置方法ios10.0.3iOS10.0.3可以越狱吗ios5.1.1固件下载我的iphone4 现在是IOS5.1.1 用爱思助手下载APP都说系统版本太低 但是我手机只有altools.u32为什么我做的Authorware在打包后不是全屏的?
广东服务器租用 dreamhost 免费cdn加速 免费网站监控 北京主机 52测评网 linux空间 新天域互联 百兆独享 web服务器搭建 中国电信测速网站 服务器防火墙 qq金券 阿里云邮箱登陆地址 金主 广东主机托管 好看的空间 godaddyssl ncp是什么 hosts文件修改 更多