解决IE6,IE7不能隐藏绝对定位溢出的内容
2012-12-10 21:25
429 查看
最近在做项目时遇到一个奇怪的样式问题,因为刚换了工作, 新公司的分工比较细,所以我也很少写样式了。现在遇到这样的问题,记录一下。
关于这个问题,是在IE6和IE7下才会有的,万恶的IE啊。
先看代码:
CSS:
HTML:
在IE6和IE7下面可以看到,#inner层可以溢出,#wrap层明明设置了overflow:hidden;
写CSS是没有多少理论可以说得明白这是什么回事,工作那么久以来,发现各浏览器都慢慢都有各自的标准。
可怜我们这些前端工程师,而且还被很多人认为做前端是一件容易事。
那么又有前端或后端程序员能说得明白上面的问题呢。
多余的话不说太多了,先说这个问题如何解决。
给#wrap层也加上一个position:relative;问题就可以解决了。
不要问我为什么这样就可以了,我也解释不出来啊。
关于这个问题,是在IE6和IE7下才会有的,万恶的IE啊。
先看代码:
CSS:
#wrap { width: 1000px; height: 500px; margin: 0 auto; border: 1px solid red; overflow: hidden; } #box { width: 100px; height: 30px; background: #EEE; position: relative; } #inner{ width: 50px; height: 15px; position: absolute; left: -10px; top: 0px; background: red; z-index: 12; }
HTML:
<div id="wrap"> <div id="box"> <div id="inner"></div> </div> </div>
在IE6和IE7下面可以看到,#inner层可以溢出,#wrap层明明设置了overflow:hidden;
写CSS是没有多少理论可以说得明白这是什么回事,工作那么久以来,发现各浏览器都慢慢都有各自的标准。
可怜我们这些前端工程师,而且还被很多人认为做前端是一件容易事。
那么又有前端或后端程序员能说得明白上面的问题呢。
多余的话不说太多了,先说这个问题如何解决。
给#wrap层也加上一个position:relative;问题就可以解决了。
不要问我为什么这样就可以了,我也解释不出来啊。
相关文章推荐
- 解决IE6,IE7不能隐藏(overflow:hidden)绝对定位溢出的内容
- 解决IE6,IE7不能隐藏绝对定位溢出的内容
- 解决IE6,IE7不能隐藏绝对定位溢出的内容
- CSS中overflow:hidden在ie6、ie7无效不能隐藏解决办法
- IE6和IE7下绝对定位position:absolute和margin的冲突问题解决
- IE6和IE7下绝对定位position:absolute和margin的冲突问题解决
- 绝对定位的元素在ie6下不显示隐藏了的有效解决方法
- IE6,IE7绝对定位元素神秘消失或被遮挡的解决
- IE6和IE7不能识别display:inline-block的解决办法
- 父元素绝对定位 子元素在IE6 不能点击
- 解决 IE6 不支持绝对定位 fixed 以及IE6下被绝对定位的元素在滚动的时候会闪动的问题
- ie6 ie7 绝对定位 相对定位 层被遮住
- 绝对定位常见误区:position:absolute相对于谁定位、及当溢出时怎么隐藏
- IE6、IE7下绝对定位position:absolute和margin的冲突bug解决方法
- IE6绝对定位的bug及其解决办法
- IE6相对父容器绝对定位的bug及其解决办法
- 绝对定位的元素在IE6下莫名丢失解决办法
- css:节点li中子元素浮动,即使固定高度,溢出隐藏,在ie6、7中仍有缝隙的解决办法
- IE6绝对定位的bug及其解决办法
- IE6绝对定位的bug及其解决办法