设计页面的时候,由于各种浏览器版本的兼容性问题,需要为不同的浏览器设计不同的CSS或Javascript,此时就可以用IE Hack来自动识别不同的浏览器并加载不同的设置!
IE Hack是一段HTML注释代码,但是IE可以识别这些注释,而其他标准浏览器却不识别,会自动跳过这些注释,以此来识别不同的浏览器。其格式为
<!–[if express]>………….<![endif]–>
其中express为版本测试表达式,注释内部是为特定浏览器版本而设定的代码!例如在解决png背景透明bug时所使用的代码,当浏览器版本低于或等于IE6的时候就导入这段CSS代码:
<!--[if lte IE 6]>
<style type="text/css">
img{behavior: url(iepngfix.htc)}
<style>
<[endif]–>
lte:less than or equal to意思是小于或等于
gte: great than or equal to意思是大于或等于
lt:less than 意思是小于
常用的IE Hack表达式
1. <!–[if !IE]><!–> 除IE外都可识别 <!–<![endif]–>
2. <!–[if IE]> 所有的IE可识别 <![endif]–>
3. <!–[if IE 5.0]> 只有IE5.0可以识别 <![endif]–>
4. <!–[if IE 5]> 仅IE5.0与IE5.5可以识别 <![endif]–>
5. <!–[if gt IE 5.0]> IE5.0以及IE5.0以上版本都可以识别 <![endif]–>
6. <!–[if IE 6]> 仅IE6可识别 <![endif]–>
7. <!–[if lt IE 6]> IE6以及IE6以下版本可识别 <![endif]–>
8. <!–[if gte IE 6]> IE6以及IE6以上版本可识别 <![endif]–>
9. <!–[if IE 7]> 仅IE7可识别 <![endif]–>
10. <!–[if lt IE 7]> IE7以及IE7以下版本可识别 <![endif]–>
11. <!–[if gte IE 7]> IE7以及IE7以上版本可识别 <![endif]–>
behavior 版本:IE5+专有属性 继承性:无
语法:
behavior : url (url) | url (#objID ) | url (#default#behaviorName)
参数:
url (url) : 使用绝对或相对地址指定DHTML行为组件(.htc)
url (#objID ) : 用二进制实现DHTML行为,#objID为object对象指定的id特性
url (#default#behaviorName) : IE的默认行为。由behaviorName指定
说明:
设置或检索对象的DHTML行为。
多个行为之间用空格隔开。
关于DHTML行为,请参阅我所编写的其他教程。
对应的脚本特性为behavior。请参阅我编写的其他书目。
示例:
div { behavior: url(fly.htc) url(shy.htc); }
分享到:
相关推荐
CSS hack由于不同的浏览器,比如Internet Explorer 6,Internet Explorer 7,Mozilla Firefox等,对CSS的解析认识不一样,因此会导致生成的页面效果不一样,得不到我们所需要的页面效果。 这个时候我们就需要针对不同...
IE Hack 各种浏览器兼容性调整办法 IE6 IE7 IE8 IE9
IE各版本hack汇总
非常不错的对于ie hack的一些写法讲解
IE6、IE7、IE8、Firefox兼容性CSS HACK代码+示例
针对firefox ie6 ie7 ie8的css样式hack
px来定义宽度,精确到像素,所以对的很齐,但是用%来定义之后,在IE下select跟input:text就对不齐了,别的浏览器都ok,所以只能采用针对IE的Hack来处理
条件注释只有在IE浏览器被支持,因此仅适用于IE的特殊指令。从IE5起都支持
IE7 以display:inline-block为例: less的hack写法: .box{ display: inline-block; *display:inline; *zoom: 1; } 编译出来的结果也是 .box{ display: inline-block; *display:inline; *zoom: 1; } 注意:...
解决ie6、ie7、ie8浏览器的css hack 兼容问题
CSS HACK 兼容列表 Firefox,IE5,IE5.5,IE6,IE7,IE8 CSS 浏览器兼容
CSS布局资料:IE5、IE6、IE7、IE8 的CSS HACK兼容列表
有IE就有hack,看看IE9的css hack,IE8的css hack;上次同事说一个页面IE10下有问题,IE9下测试了一下,也有同样的问题。悲剧了赶紧找IE10的hack。 google上翻到的IE10 CSS Hacks 还算比较实用的。记录一下以备后用...
这个问题一直困扰我很久,不过,今天我终于搞明白了,也独创了一个能hack IE8、IE9、IE11这三个浏览器的代码写法模式,本文将与各位分享。 \9和\0为什么可能hack IE11\IE9\IE8无效? 可能很多人都略明白,\0是用来
这里就总结一下对IE系列的CSS Hack,记录一下,方便以后查阅。 IE Hack IE系列浏览器的hack大略如下: _nowamagic:1px;———–ie6 *nowamagic:1px;———–ie7 nowamagic:1px\0;———-ie89 nowamagic:1px\9\0;...
css hack ie6 ie7 ie8 firefox等浏览器兼容性
实现了大部分常用的 IE Hack,获取图片宽高等,position: center 等功能。同时可以配合 Sass/Less 等预处理工具使用,最重要的是它不改变 CSS 原生的语法,让 CSS 写起来更简单,更优雅。向前,CSS Grace 可以作为...
搜集整理的CSS HACK,也即是在多种浏览器(主要是ie6 ie7 ie8 ff)下样式统一的解决办法。 内容还是较全的,前台开发中常见的兼容性问题都可以找到解决方法,值得研究。 包括各浏览器CSS hack,技巧。有实例。
什么是CSS hack: 由于不同的浏览器,对CSS的解析认识不一样,从而导致生成的页面效果不一样,得不到我们所需要的页面效果。 针对不同的浏览器写不同的CSS code的过程,就叫CSS hack,也叫写CSS hack
你可以在ie6、ie7、ie8、ie9、ie10、firefox、google chrome浏览器中看到不同的效果,测试兼容性。只针对ie以及Gecko内核、WebKit内核。