您好,欢迎访问一九零五行业门户网

浏览器hack总结 详细的浏览器兼容性解决方法_html/css_WEB-ITnose

由于各浏览器对页面的解析不同,会导致页面在不同浏览器中显示的样式不一致,为了保持页面的统一,经常需要对浏览器进行兼容性问题的调试。
css hack 面对浏览器诸多的兼容性问题,经常需要通过css样式来调试,其中用的最多的就是css hack。所谓css hack就是针对不同的浏览器书写不同的css样式,通过使用某个浏览器单独识别的样式代码,控制该浏览器的显示效果。css hack主要分为两类
css 选择器hack
css选择器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写法 针对于的浏览器
@media screen\9{body { background: red; }} 只对ie6/7生效
@media \0screen {body { background: red; }} 只对ie8生效
@media \0screen\,screen\9{body { background: blue; }} 只对ie6/7/8有效
@media screen\0 {body { background: green; }} 只对ie8/9/10有效
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {body { background: orange; }} 只对ie10有效
如果样式比较多,条件注释,是不错的选择:
ie条件注释语句
ie条件注释语句 针对的浏览器版本
   ie7 以下版本
ie7及以下版本(包含ie7)
ie7 以上版本
ie7及以上版本(包含ie7)
非ie7版本
您使用不是 internet explorer 非ie浏览器
小强零零壹和大家一起分享
其它类似信息

推荐信息