调用条件样式的方法

76 篇文章 0 订阅
调用条件样式的方法

我们调用条件样式方法和<link>标签一样,常常放置在<head>标签中。和前面所见识的普通注释不一样的是,这里需要加上条件判断,具体格式如下所示:

			<!--[if IE]>
				...
			<![endif]-->
		

在具体使用条件注释语句之前,有几种条件注释属性含义我们必须要理解:

  1. gt(greate than):选择条件版本以上版本,不包含条件版本本身;
  2. lt(less than):这个刚好与gt相反,表示的是选择条件版本以下的版本,不包含条件版本自身;
  3. gte(greate than or equal):选择条件版本以上版本,并包含条件版本自身;
  4. lte(less than or equal):选择条件版本以下的版本,并包含条件版本自身;
  5. !:选择条件版本以外所有版本,无论高低。
条件样式的使用方法

下面我们一起来看针对不同版本如何使用条件样式

1、支持所有IE浏览器

			<!--[if IE]>
				<link rel="stylesheet" href="all-ie-only.css"  type="text/css"/>
			<![endif]-->
		

2、支持除IE外的所有浏览器

			<!--[if !IE]>
				<link rel="stylesheet" href="not-ie.css"  type="text/css"/>
			<![endif]-->
		

上面是除了IE浏览器外所有浏览器都识别这个样式,另外CSS-TRICKS的《How To Create an IE-Only Stylesheet》一文中提供了另一种写法:

			<!--[if !IE]><!-->
			   <link rel="stylesheet" type="text/css" href="not-ie.css" />
			 <!--<![endif]-->
		

3、仅仅支持IE10

			<!--[if IE 10]>
			    <link rel="stylesheet" type="text/css" href="ie10.css">
			<![endif]-->
		

4、仅仅支持IE9

			<!--[if IE 9]>
			    <link rel="stylesheet" type="text/css" href="ie9.css">
			<![endif]-->
		

5、仅仅支持IE8

			<!--[if IE 8]>
			    <link rel="stylesheet" type="text/css" href="ie8.css">
			<![endif]-->
		

6、仅仅支持IE7

			<!--[if IE 7]>
			    <link rel="stylesheet" type="text/css" href="ie7.css">
			<![endif]-->
		

7、仅仅支持IE6

			<!--[if IE 6]>
			    <link rel="stylesheet" type="text/css" href="ie6.css">
			<![endif]-->
		

8、支持IE10以下版本(IE9以及IE9以下版本)

这种方法是样式表使用在低于IE10的浏览器,换句话说除了IE10以外的所有IE版本都将被支持。

			<!--[if lt IE 10]>
			    <link rel="stylesheet" type="text/css" href="ie9-and-down.css">
			<![endif]-->
		

也可以写成

			<!--[if lte IE 9]>
			    <link rel="stylesheet" type="text/css" href="ie9-and-down.css">
			<![endif]-->
		

前面我们也说过了lt和lte的区别,lt表示小于版本号,不包括条件版本号本身;而lte是小于或等于版本号,包括了版本号自身。

9、支持IE9以下版本(IE8以及IE8以下版本)

			<!--[if lt IE 9]>
			    <link rel="stylesheet" type="text/css" href="ie8-and-down.css">
			<![endif]-->
		

或:

			<!--[if lte IE 8]>
			    <link rel="stylesheet" type="text/css" href="ie8-and-down.css">
			<![endif]-->
		

10、支持IE8以下版本(IE7以及IE7以下版本)

			<!--[if lt IE 8]>
			    <link rel="stylesheet" type="text/css" href="ie7-and-down.css">
			<![endif]-->
		

或:

			<!--[if lte IE 7]>
			    <link rel="stylesheet" type="text/css" href="ie7-and-down.css">
			<![endif]-->
		

11、支持IE7以下版本(IE6以及IE6以下版本)

			<!--[if lt IE 7]>
			    <link rel="stylesheet" type="text/css" href="ie6-and-down.css">
			<![endif]-->
		

或:

			<!--[if lte IE 6]>
			    <link rel="stylesheet" type="text/css" href="ie6-and-down.css">
			<![endif]-->
		

上面8——11这几种方法,使用的是低于(lt)和低于或等于(lte)的方法来判断,我们也可以使用大于(gt)和大于或等于(gte)达到上面的效果:

12、高于IE9的版本(IE10以及IE10以上版本)

			<!--[if gt IE 9]>
			    <link rel="stylesheet" type="text/css" href="ie10-and-up.css">
			<![endif]-->
		

或:

			<!--[if gte IE 10]>
			    <link rel="stylesheet" type="text/css" href="ie10-and-up.css">
			<![endif]-->
		

13、高于IE8的版本(IE9以及IE9以上版本)

			<!--[if gt IE 8]>
			    <link rel="stylesheet" type="text/css" href="ie9-and-up.css">
			<![endif]-->
		

或:

			<!--[if gte IE 9]>
			    <link rel="stylesheet" type="text/css" href="ie9-and-up.css">
			<![endif]-->
		

14、高于IE7的版本(IE8以及IE8以上版本)

			<!--[if gt IE 7]>
			    <link rel="stylesheet" type="text/css" href="ie8-and-up.css">
			<![endif]-->
		

或:

			<!--[if gte IE 8]>
			    <link rel="stylesheet" type="text/css" href="ie8-and-up.css">
			<![endif]-->
		

15、高于IE6的版本(IE7以及IE7以上版本)

			<!--[if gt IE 6]>
			    <link rel="stylesheet" type="text/css" href="ie7-and-up.css">
			<![endif]-->
		

或:

			<!--[if gte IE 7]>
			    <link rel="stylesheet" type="text/css" href="ie7-and-up.css">
			<![endif]-->
		

16、高于IE5.5的版本(IE6以及IE6以上版本)

			<!--[if gt IE 5.5]>
			    <link rel="stylesheet" type="text/css" href="ie6-and-up.css">
			<![endif]-->
		

或:

			<!--[if gte IE 6]>
			    <link rel="stylesheet" type="text/css" href="ie6-and-up.css">
			<![endif]-->
		

12-16几种方式刚好和8-11几方式相反,我们此处使用的是“gt”和“gte”,“gt”刚好和“lt”相反,表示的是大于条件版本号,不包括版本号本身;而“gte”则和"lte"相反,表示的是大于或等于条件版本号,包括了条件版本自身。一共罗列了16种条件注释所表达的含义,大家要呵以根据平时的应用对比参照一下,如果从未接触的朋友,可以动手尝试一下,动手能丰衣足食嘛。

上面就是展示了如何创建条件注释样式,大家可以根据自己的需求使用其中的一种或是多种,最后总结一下条件注释主要针对的是IE浏览器,所以我们也把他称作IE条件注释。另外IE条件注释只有IE5以上的版本才开始支持IE条件注释,所以“只有IE”才能识别,换句话说,只有IE5版本以上才能识别IE条件注释。如此一来,我们管理给IE兼容写的单独样式,就带来了极大的方便与好处。最后有一点需要提出的是:“IE的条件注释不单单针对样式,我们也可以针对于javascrit或者其字的注释说明”。最后我们在来看一个IE条件注释应用在javaScript的实例:

			<!--[if IE 6]>
				<script type="text/javascript" src="js/pngfix.js"></script>
				<script type="text/javascript" src="js/ie6.js"></script>
			<![endif]-->
		

这一节主要了解了如何在页面中创建IE条件注释,以及其带来的好处,和所起的作用。那么下一节将进入浏览器兼容之旅的第一站:浏览器对Hack的识别。感兴趣的朋友请观注本站的相关更新。

转载出处:W3CPLUS

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值