繁体   English   中英

相对Div内的IE7绝对Div消失了。 z-index不能解决问题

[英]IE7 Absolute Div within Relative Div vanishes. z-index does not solve issue

我在SO上找到的每个问题都列出了z-index fix作为解决方案。 不幸的是,这似乎对我没有用。

这是我的结构:

  • 身体
  • div包装器
    • div标题
    • div main
      • div page-container
        • div page-background-image
          • div page-bottom-gradient
      • div小学
        • div左菜单
      • div外容器
      • 等等...
    • div页脚

这是CSS

body {
color: #666;
font-size: 12px;
line-height: 18px;
background: url(images/bg-stripes.gif) repeat bottom left;
font-family: "Helvetica Neue", Arial, Helvetica, "Nimbus Sans L", sans-serif;
border: 0;
margin: 0;
padding: 0;
vertical-align: baseline;
}
#wrapper {
position: relative;
margin: 0 auto;
width: 1280px;
padding-top: 30px;
background: transparent;
vertical-align: baseline;
z-index: 0;
}
#main {
position: relative;
clear: both;
overflow: hidden;
padding: 0 0 0 0;
background: #DDD;
z-index: 0;
margin: 0 auto;
width: 1280px;
}
#page-container {
padding: 0 0 0 0;
position: relative;
z-index: 2;
}
#page-background-image {
position: absolute;
left: 0;
top: 0;
width: 460px;
height: auto;
z-index: 1;
overflow: hidden;
}

看来上面结构中的粗体部分位于主div之后。 删除“position:absolute;” 从#page-background-image修复问题,但显然删除了绝对位置并搞砸了布局。 无论是使用从高到低的索引还是从低到高,为树中的每个元素设置z-index都不会改变。 可能还有另一个导致这种影响的问题吗? 我宁愿不把它设置为背景图像,因为图像是动态拉动和放置的。

永远记住,如果您正在应用z-index ,您还必须将position应用为relativeabsolute 默认情况下, div将此设置为static因此将忽略z-index

#main你有一个z-index ,但不是position - 这可能会导致问题。

事实证明,在其他div的树中有一个浮动div。 那个漂浮的div杀死了每个不静止的祖先(直到#main)。 解决方案是在浮动div之前添加一个空div。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM