针对不同版本的IE浏览器的条件CSS应用

kuaisushandi

kuaisushandi

2016-02-19 23:40

只要你有一台电脑或者手机,都能关注图老师为大家精心推荐的针对不同版本的IE浏览器的条件CSS应用,手机电脑控们准备好了吗?一起看过来吧!

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

介绍

毫无疑问,任何一个试图使用 CSS 的网页设计师和开发人员都会发现不同的浏览器要求不同的样式声明。这些烦恼归咎于各浏览器及其各版本不同程度的 CSS 执行的完整性。条件 CSS 是这个问题的一个解决方案,采用的是 Internet Explorer 的条件注释语法的思想,并把它内联到 CSS 声明之中。

基本用法

条件 CSS 主要用于指出一个特别的 CSS 声明是不是应该用于一个特别的浏览器。当然你不希望经常这么做,但是当你需要针对一个浏览器的时候,它会非常有用。可以在U4EA支持列表里看到,大部分的浏览器都支持这种方式。

任意 CSS 声明或者块都可以添加条件声明前缀,这些前缀有3种基本类型:
[if {!} browser]
[if {!} browser version]
[if {!} condition browser version]

! - 声明的否定 (例 NOT) - 可选

browser - 声明针对的浏览器
‘IE’ - Internet Explorer
‘Gecko’ - Gecko 核心的浏览器 (Firefox, Camino 等)
‘Webkit’ - Webkit 核心的浏览器 (Safari, Shiira 等)
‘SafMob’ - 移动版 Safari (iPhone / iPod Touch)
‘Opera’ - Opera 的浏览器
‘IEMac’ - Mac 版本的 Internet Explorer
‘Konq’ - Konqueror
‘IEmob’ - 移动版 IE
‘PSP’ - Playstation Portable
‘NetF’ - Net Front(恕糖伴西红柿无知,不知道这是啥东东)

version - 要针对的浏览器版本

condition - 算术符
lt - 小于
lte - 小于等于
eq - 等于
gte - 大于等于
gt - 大于

一些条件声明的例子:

// 条件-CSS 语法实例  
[if IE] - 如果浏览器是 IE  
[if ! Opera] - 如果浏览器不是 Opera  
[if IE 5] - 如果浏览器是 IE 5  
[if lte IE 6] - 如果浏览器是 IE 6 或者更低版本 (IE 5, IE 4 等)  
[if ! gt IE 6] - 和上面的声明等效, 如果浏览器版本不高于 IE 6

因为许多实例认为 div 是具有 width 和 padding 的盒类。因此它也应该在 IE 5 中表现正常(我发现很多人已经放弃支持 IE 5了,但这是一个经典例子)。IE 5的盒模型不标准,因此这就是使用条件 CSS 解决的方法:

// 条件 CSS 盒模型例子  
div.box {  
    width: 400px;  
    [if IE 5] width: 600px;  
    padding: 0 100px;  
}

像你所看到的,条件 CSS 使得你可以只维护一个 CSS 文件,而不是好几个需要用到 IE 的条件注释的文件。这有助于流线型维护,也使得代码更加清晰。

再进一步,条件 CSS 的一个重要特性是当它发现一条 @import CSS 声明时,它会自动打开并插入需要导入的文件。这样就减少了页面的加载时间,因为浏览器只需要对 CSS 文件做出一条 HTTP 请求。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

尽管条件 CSS 大多用于针对不同版本的 IE 浏览器,当你在别的浏览器碰到很难修正的 bug(主要使用 Javascript 修正) 的时候,条件 CSS 也是相当有用的。例子包括了缺少 ‘display: inline-block’ 支持的 Firefox 2 和 Safari 2 中的 背景图片 bug。这些 bug 在这些浏览器的最新版本里面已经修正了,但是当这些浏览器占有一定市场份额的时候,向后兼容就很重要了。

展开更多 50%)
分享

猜你喜欢

针对不同版本的IE浏览器的条件CSS应用

Web开发
针对不同版本的IE浏览器的条件CSS应用

针对各种版本的浏览器隐藏CSS的九大技巧

Html CSS布局 Div+CSS XHTML
针对各种版本的浏览器隐藏CSS的九大技巧

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

不同浏览器的CSS Hack写法

Web开发
不同浏览器的CSS Hack写法

如何查看IE浏览器版本?

浏览器
如何查看IE浏览器版本?

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

如何查看IE浏览器版本

浏览器
如何查看IE浏览器版本

CSS让你的IE浏览器崩溃

Web开发
CSS让你的IE浏览器崩溃

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

If through time through love倘若时光看透爱

If through time through love倘若时光看透爱

CSS实例:用CSS制作网页像素画

CSS实例:用CSS制作网页像素画
下拉加载更多内容 ↓