欢迎光临杨雨的个人博客站!

杨雨个人网站-杨雨个人博客-杨照佳

杨雨个人博客网站

关注互联网和搜索引擎的个人博客网站

首页 > WEB开发 > css3案例分享 >

ie7中overflow:auto无效的解决方法

发布时间:2016-09-14  编辑:杨雨个人博客网站   点击:   

产生原因
当父元素的直接子元素或者下级子元素的样式拥有position:relative属性时,父元素的overflow:auto属性就会失效。

解决办法
解决这个bug很简单,在父元素中使用position:relative;即可解决该bug。

代码bug重现


代码如下:
<ul>
<li>我是很努力的前端博客,希望你会喜欢</li>
<li>我是很努力的前端博客,希望你会喜欢</li>
<li>我是很努力的前端博客,希望你会喜欢</li>
<li>我是很努力的前端博客,希望你会喜欢</li>
<li>我是很努力的前端博客,希望你会喜欢</li>
</ul>



代码如下:
ul{overflow:auto; height:100px;}
li{position:relative; height:30px; line-height:30px;}

在ie7中是会出现奇怪bug,有滚动条出现,但是无法拉动滚动条。解决就是给ul{position:relative;}

IE7 float:right会换行
以前以为是ie6才会出现,没想到ie7也同样有这个bug,网上很多说把float:right的元素放在最前面,这是有多么2的想法啊。牺牲一个元素的位置来解决这个bug,有时候你自己看代码时都有点无语,解决方法可以给父层加一个相对定位,然后给这个右边加一个绝对定位来实现。我觉得这样子比较靠谱点。

以上就是这篇文章的全部内容,希望对大家的学习和工作能有一定的帮助。

本文地址:http://itbyc.com/web/css3/11346.html
转载请注明出处。
分享是一种快乐,也是一种美德:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
博客首页 | WEB开发 | 网站运营 | CMS使用教程 滇ICP备14002061号-1