自从有了有了xp 系统 IE6 \ IE7浏览器,一直都是大陆前端人员的头疼的一个问题;许多的样式都是不兼容的;尤其是css3;很多属性都被ie6 7排斥了;
自己工作的需要,把他总结下来,分享给大家,如果有不全的请帮个忙补上
一般兼容问题可以通过这样的格式去调试:
一般顺序是: 火狐等其他浏览器 > ie10 > ie9 > ie8 > ie7 > ie6
#mydiv{ color:red\9;}/*ie8*/
*+html #mydiv{...} /*ie7*/
*html #mydiv{...}或者#mydiv{ _color:red; ... } /*ie6*/
问题一:clearfix :after :before在ie6 ie7下的兼容问题
首先看clearfix的完美写法
.clearfix:after {
clear: both;
content: ".";
display: block;
height: 0;
overflow: hidden;
visibility: hidden;
}
.clearfix {
display:inline-block;
}
html[xmlns] .clearfix { display: block; }
* html .clearfix { height: 1%; }
如果你不喜欢这样的写法,想用:after和:before
那么你会发现伪类的写法是在ie6 7下是会跑位的;那我们该怎么办呢;方法很简单,就是去掉 " : " 冒号;
比如:
#mydiv:after{ content:" "; display:table; clear:both;}
在ie 6 7下要这样写:
#mydiv:after,#mydiv after{ content:" "; display:table; clear:both;} /*这样写可以兼容其他浏览器和ie 6 7*/