CSS Hack浏览器兼容IE6+IE7+IE8+IE9+FF

HACK原理:不同浏览器对各中字符的识别不同 (读完文章你会发现,FF和IE8对以下字符的识别能力完全相同)

在 CSS中常用特殊字符识别表:

(1)* IE6+IE7都能识别*,而标准浏览器FF+IE8是不能识别*的;

(2)!important: 除IE6不能识别 !important外,  FF+IE8+IE7都能识别!important ;

(3)_ : 除IE6支持_ 外,  FF+IE8+IE7都不支持_;

(4)\9:所有IE浏览器都识别(IE6、IE7、IE8、IE9)

示例:

(1)区别FF(IE8)与IE6 IE7

backgorund:orange; FF和IE8背景色将为橘黄色

*backgorund:red;   IE6和IE7背景色将为红色

(2)区别FF(IE8)与IE6与IE7

background:orange;   FF和IE8背景色将为橘黄色

*background:red !important;  IE7背景色将为红色

*background:blue;     IE6背景色将为蓝色   

(3)区别FF(IE8)与IE6与IE7

background:orange;        FF和IE8背景色将为橘黄色

*background:red;          IE7背景色将为红色

_background:blue;         IE6背景色将为蓝色

(4)区别FF与IE6 IE7 E8

color:gray;      FF等非IE浏览器字体色将为灰色

color:red\9;    IE8 IE9字体色将为红色

*color:green;    IE7字体色将为绿色

_color:blue;    IE6字体色将为蓝色

出处:http://home.blueidea.com/space.php?uid=367433&do=blog&id=21964

.lanyu{
         padding:10px;
         padding:9px\9; /* all ie */
         padding:8px\0; /* ie8-9 */
         *padding:5px; /* ie6-7 */
        +padding:7px; /* ie7 */
         _padding:6px; /* ie6 */
}

提示:CSS HACK书写顺序:先写FF等非IE浏览器所需样式,其次写IE8所需样式,接着是IE7的,再接着才是IE6的!

总结:实际运用中我感觉比较少用到!important ,只要你记住"*"和"_"我想就足够区别于FF(IE8)与IE6与IE7了.

.sofish{          padding:10px;       

padding:9px\9; /* all ie */        

padding:8px\0; /* ie8-9 目前应用于IE8的单独hack,情况比较少 */     

   *padding:5px; /* ie6-7 */     

   +padding:7px; /* ie7 */     

   _padding:6px; /* ie6 */ }

/* webkit and opera */ @media all and (min-width: 0px){ .sofish{padding:11px;} }

  /* webkit */ @media screen and (-webkit-min-device-pixel-ratio:0){ .sofish{padding:11px;} }

/* opera */  @media all and (-webkit-min-device-pixel-ratio:10000), not all and (-webkit-min-device-pixel-ratio:0) { .sofish{padding:11px;} }

/* firefox * / @-moz-document url-prefix(){ .sofish{padding:11px;}} /* all firefox */  html>/**/body .sofish, x:-moz-any-link, x:default { padding:11px; } /* newest firefox */ 

HTML: 添加body class

  <!--[if IE6]--><body class="ie6"><![endif]-->

<!--[if IE7]--><body class="ie7"><![endif]-->

  <!--[if IE8]--><body class="ie8"><![endif]-->

<!--[if IE9]--><body class="ie9"><![endif]-->

<!--[if !IE]--><body class="non-ie"><![endif]-->

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值