如何在Internet Explorer中将一个元素叠加到另一个相对定位的元素上?z-index属性不起作用,它总是出现在相对定位元素的后面。
如何在Internet Explorer中将一个元素叠加到另一个相对定位的元素上?z-index属性不起作用,它总是出现在相对定位元素的后面。
看起来我在开玩笑,但我并不是
.myLinkCssClass {
background : url(#);
}
我曾经遇到一个问题,这个特定的解决方法对它并不适用。这个问题有点难以解释,所以我会试着用代码来说明:
<div id="first" style="z-index: 2">In between</div>
<div id="second" style="z-index: 1">In the back
<div id="third" style="z-index: 3">Foreground</div></div>
<div id="first" style="z-index: 2">In between</div>
<div id="third" style="z-index: 3; visibility:hidden">Foreground</div>
<div id="second" style="z-index: 1">In the back
<div id="third" style="z-index: 3">Foreground</div></div>
值得一提的是,在我的原始代码中,元素没有ID,因此我不会遇到两个元素共享同一个ID并使我的HTML无效的问题。
我认为可以将这种奇怪的现象归类为另一个bug,它恰好能帮助解决原始问题,但至少对我有效。希望有人会发现这很有用!
你不会是在尝试覆盖一个下拉框(select标签)、iframe或flash动画吧?
在这些情况下,z-index就毫无用处了。
否则,请问你使用的是哪个浏览器版本,并且是否使用绝对定位?
我想指出的是,如果您使用的是IE8及以下版本,则不支持CSS3滤镜。这是我的问题所在。
我正在使用:
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@black00', endColorstr='@black00', GradientType=0);
之前:
DivThatYouMustHover {
height: 300px;
position: relative;
width: 200px;
}
之后:
DivThatYouMustHover {
height: 300px;
width: 200px;
}
DivThatYouMustHover:hover {
position:relative;
}
这样,该div的其他“姐妹”将保持正常定位,不会干扰布局。对我来说效果非常好!希望它也能帮到你。
创建并在要置于顶部的元素上设置一个额外的透明背景图像。对我来说,在IE8中最终起作用了。SASS:
#galerie-link {
position: absolute;
z-index: 1000;
top: 25px;
left: 40px;
a {
display: block;
width: 185px;
height: 90px;
background-image: url(../images/transparent.png);
}
}