ie6,ie7下设置overflow:auto下滚动条不起作用

  • 内容
  • 评论
  • 相关

遇到一个比较特殊的情况:ie6,ie7下设置overflow:auto下滚动条出来了但是滚动条不起任何作用,但在火狐,ie8,ie9,谷歌等浏览器下正常显示。通过查询终于找到原因,只需要加一个position:relative;属性就能解决问题!
$(document.body).css({'overflow':'hidden'});  ====$('body').css('overflow','hidden')
http://www.niumowang.org/html-css/ie6-overflow-hidden-invalid/
明智的浏览器(ex. chrome and firefox)会初始付值给html{overflow:visible;}

IE6 初始付值html{overflow-x:auto;overflow-y:scroll;}
IE7 初始付值html{overflow-x:visible;overflow-y:scroll;}
设置了body{overflow:hidden},还会出现滚动条,不过这个滚动条不是body的,是html的
只有你设置html{overflow:visible;} body{overflow的值}才能传递到html{}中去
这样html的值就变成了{overflow:hidden}
所以你css里要加一句:
html {
    overflow: visible;
}