首页 > 代码库 > ie 6 /7/8的hack处理

ie 6 /7/8的hack处理

1、ie6 ie7不支持display:inline-block的解决办法:
设置了display:inline-block后在设置*display:inline,*zoom:1
2、font-size:100%的作用:
当body{font-sizez;12px;}
h1~h6是不会继承这个属性的,要给它设定font-size:100%;
line-height:最好使用复数,使用单数时,对浏览器的显示有差别(各个浏览器解析的不同)
3、样式截字,仍然使用省略号(只对单行文本有作用):
width:***;
text-overflow:ellipsis;
-o-text-overflow:ellipsis;
overflow:hidden;
4、Ie6不兼容max-width和min-width:的解决方法:

_width:expression((document.documentElement.clientWidth||document.body.clientWidth)>1000?1000:"")

IE6支持最小宽度,解决CSS代码:
.yangshi{min-width:1000px;_width:expression((document.documentElement.clientWidth||document.body.clientWidth)>1000?"1000px":"");}

说明:min-width:1000px; 这个是IE6以上级其它品牌浏览器支持最大范围宽度。而_width:expression((document.documentElement.clientWidth||document.body.clientWidth)>1000?"1000px":"");则是让IE6支持min-width替代CSS代码,但效果和其它版本浏览器相同效果。

让所有浏览器都支持min-width的CSS样式代码,完整:
min-width:1000px;_width:expression((document.documentElement.clientWidth||document.body.clientWidth)>1000?"1000px":"");
这里的1000和1000px是你需要的数值,注意3个数值的相同。

让IE6即支持最小宽度又支持最大宽度限制设置。这种情况我们常常碰到对图片控制,让不确定大小的图片,如果太宽,不能超出一定范围值,小的时候不控制他的方法,用到CSS代码:

_width:expression(this.scrollWidth > 620 ? "620px" : (this.scrollWidth < 1? "1px" : "auto"));

起作用的一句话::

_width: expression(this.offsetWidth > 630 ? ‘630px‘: true);

 5、css 命名规范:

不建议使用“——”这个符号,因为ie6有时候不识别此符号。

6、区别ie6 ie7 firefox的方法
ie6 识别*和——
ie7 识别*和!important
firefox识别!important不能识别*
ie8 * \9

 7、ie6 不支持固定的解决办法:

  1. position: fixed;
  2. _position: absolute;
  3. right: 0;
  4. _right: -1px;
  5. top: 80px;
  6. _bottom: auto;
  7. z-index: 2147483647;
  8. _top: expression(eval(document.documentElement.scrollTop + 80));
  9. _top:expression(eval(document.documentElement.scrollTop || document.body.scrollTop) +eval(document.documentElement.clientHeight || document.body.clientHeight) -520 +‘px‘); 
8、rgba透明在ie9下的问题(ie9人滤镜)
filter:none;     /*处理IE9浏览器中的滤镜效果*/background-color:rgba(0,0,0,0.8);
 

ie 6 /7/8的hack处理