浏览器hack总结 详细的浏览器兼容性解决方法
2017-09-25 17:44
225 查看
由于各浏览器对页面的解析不同,会导致页面在不同浏览器中显示的样式不一致,为了保持页面的统一,经常需要对浏览器进行兼容性问题的调试。
面对浏览器诸多的兼容性问题,经常需要通过CSS样式来调试,其中用的最多的就是CSS Hack。所谓CSS Hack就是针对不同的浏览器书写不同的CSS样式,通过使用某个浏览器单独识别的样式代码,控制该浏览器的显示效果。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 选择器{样式代码}
这里小强老师,把属性hack分为 前缀属性hack和 后缀属性hack
其实,现在越来越的公司,不太让兼容ie6了,现在比较关心的是ie8.910等高版本的浏览器,因此这里小强老师也总结了ie专属hack ,比如ie8等。
如果样式比较多,条件注释,是不错的选择:
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和 后缀属性hackCSS属性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浏览器 |
选择器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条件注释语句 | 针对的浏览器版本 |
<!--[if lt IE 7]>内容<![endif]--> | IE7 以下版本 |
<!--[if lte IE 7]>内容<![endif]--> | IE7及以下版本(包含IE7) |
<!--[if gt IE 7]>内容<![endif]--> | IE7 以上版本 |
<!--[if gte IE 7]>内容<![endif]--> | IE7及以上版本(包含IE7) |
<!--[if !IE 7]>内容<![endif]--> | 非IE7版本 |
<!--[if !IE]><!-->您使用不是 Internet Explorer<!--<![endif]--> | 非IE浏览器 |
相关文章推荐
- 浏览器hack总结 详细的浏览器兼容性的快速解决方法
- 浏览器hack总结 详细的浏览器兼容性的快速解决方法
- 浏览器hack总结 详细的浏览器兼容性解决方法
- 解决各大浏览器兼容问题hack方法总结
- Css hack总结及其最佳用法,告诉你怎么运用hack,无懈可击的解决各个浏览器的样式兼容
- 5、Firefox浏览器中无法撑开高度问题的解决方法。 [解决bug的方法和对浏览器兼容性的技能]
- css javascript等兼容IE6,IE7,IE8,IE9,FIREFOX,Chrome等浏览器详细解决方法
- JavaScript 兼容浏览器的部分问题的总结及解决方法
- hack :是解决页面浏览器不兼容的技巧方法
- 总结用cygwin+eclipse+NDK编译hellojni的详细步骤,以及所遇到问题的解决方法
- 关于电脑QQ能上网,但是浏览器不能上网的问题的详细图文解决方法
- Css hack总结及其最佳用法,告诉你怎么运用hack,无懈可击的解决各个浏览器的样式兼容
- IE10浏览器的hack解决方法
- css中使用if条件在各大浏览器(IE6\IE7\IE8)中hack方法解决教程
- div+css在各浏览器间的兼容性问题解决方法总结
- CSS HACK收集:关于IE6/FF/google等浏览器hack的方法详细
- 比较详细的win2003 IIS6.0 301重定向带参数的问题解决方法
- 关于serv-u公网访问出现“打开ftp服务器上的文件夹时发生错误。请检查是否有权限访问该文件夹。详细信息:操作超时”的解决方法
- JSTL配置详细解决方法
- 解决最近Hotmail无法登陆,hotmail不能登陆的最新解决方法总结