浏览器hack总结 详细的浏览器兼容性解决方法

王朝学院·作者佚名  2016-05-24
窄屏简体版  字體: 小  |  中  |  大  |  超大  

浏览器hack总结 详细的浏览器兼容性解决方法由于各浏览器对页面的解析不同,会导致页面在不同浏览器中显示的样式不一致,为了保持页面的统一,经常需要对浏览器进行兼容性问题的调试。

CSSHack面对浏览器诸多的兼容性问题,经常需要通过CSS样式来调试,其中用的最多的就是CSSHack。所谓CSSHack就是针对不同的浏览器书写不同的CSS样式,通过使用某个浏览器单独识别的样式代码,控制该浏览器的显示效果。CSSHack主要分为两类

CSS选择器HackCSS选择器Hack是指通过在CSS选择器的前面,加上一些只有特定浏览器才能识别的Hack前缀,来控制不同的CSS样式。针对不同版本的浏览器,选择器Hack分为以下几类:(1)IE6及IE6以下版本识别的选择器Hack书写CSS样式时,如果希望此样式只对IE6及IE6以下版本的浏览器生效,可以使用IE6及以下版本的选择器Hack,其基本语法如下:

*html选择器{样式代码}

(2)IE7识别的选择器Hack书写CSS样式时,如果希望此样式只对IE7浏览器生效,可以使用IE7识别的选择器Hack,其基本语法如下:

*+html选择器{样式代码}

CSS属性Hack这里小强老师,把属性hack分为前缀属性hack和后缀属性hack

CSS属性Hack(前缀)

针对的浏览器

_color:red;

IE6及其以下的版本

*color:red;或者+color:red;

IE7及其以下的版本

CSS属性Hack(后缀)

针对的浏览器

color:red\9;

IE6/IE7/IE8/IE9/IE10版本

color:red\0;

IE8/IE9/IE10版本

color:red\9\0;

IE9/IE10

color:red!important

IE7/IE8/IE9/IE10及其他非IE浏览器

其实,现在越来越的公司,不太让兼容ie6了,现在比较关心的是ie8.910等高版本的浏览器,因此这里小强老师也总结了ie专属hack ,比如ie8等。

选择器Hack写法

针对于的浏览器

@mediascreen\9{body{background:red;}}

只对IE6/7生效

@media\0screen{body{background:red;}}

只对IE8生效

@media\0screen\,screen\9{body{background:blue;}}

只对IE6/7/8有效

@mediascreen\0{body{background:green;}}

只对IE8/9/10有效

@mediascreenand(-ms-high-contrast:active),(-ms-high-contrast:none){body{background:orange;}}

只对IE10有效

如果样式比较多,条件注释,是不错的选择:

IE条件注释语句

IE条件注释语句

针对的浏览器版本

<!--[ifltIE7]>内容<![endif]-->

IE7以下版本

<!--[iflteIE7]>内容<![endif]-->

IE7及以下版本(包含IE7)

<!--[ifgtIE7]>内容<![endif]-->

IE7以上版本

<!--[ifgteIE7]>内容<![endif]-->

IE7及以上版本(包含IE7)

<!--[if!IE7]>内容<![endif]-->

非IE7版本

<!--[if!IE]><!-->您使用不是InternetExplorer<!--<![endif]-->

非IE浏览器

小强零零壹和大家一起分享

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航