Internet Explorer的Z-index错误?
如何将某个元素与Internet Explorer中相对定位的另一个元素重叠? Z-index不起作用,它总是出现在相对定位的元素后面。
看起来我在开玩笑,但我不是
.myLinkCssClass { background : url(#); }
你没有任何机会试图把东西放在combobox(select标签),iframe或Flash电影的权利?
在这些情况下,z-index是一个失败的原因。
否则,你使用什么浏览器版本,并使用绝对定位?
我对这个问题有一个真正的痛苦,那就是这个特殊的解决方法与此无关。 这有点难以解释,所以我会尝试使用代码:
<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>
问题是,设置父母的Z-索引到一个更高的价值将移动到前景,而不是它应该是的后面。 我无意中偶然发现了一个解决scheme:我在其父代之外制作了一个前景元素(id = third)的副本。
<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,所以我不会遭受共享同一个元素的2个元素并使我的HTML无效。
我认为可以把这个奇怪的东西归类为另一个有助于原创的bug,但至less对我来说这是有效的。 希望有人认为这有用!
创build,然后设置一个额外的透明背景图像在你想要在上面的元素。 对我来说,它终于在IE8中工作。 上海社会科学院:
#galerie-link { position: absolute; z-index: 1000; top: 25px; left: 40px; a { display: block; width: 185px; height: 90px; background-image: url(..http://img.dovov.comtransparent.png); } }
我想要注意的是,如果您使用IE8及以下版本,则不支持CSS3filter。 这是我的问题。
我正在使用:
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@black00', endColorstr='@black00', GradientType=0);
不pipe我把我的位置或z-index设置为什么,你都看不到其他图层,因为它在图层上造成了一个完整的遮罩(而不是从清晰到黑色再次清除)。
通过去除IE8的CSS3filter,我能解决我的问题。
希望这可以帮助遇到同样问题的人。
我有一个相同的问题,在许多重复相对位置的div阻止绝对定位div的观点的HTML。 http://www.brenelz.com提供的解决方法,我已经用于成功,在这种情况下不起作用。; 所以,下面的工作对我来说:我删除了我提到的那些div的相对定位,然后添加一个CSS,以hover时相对转动这些div。 让我告诉你的代码:
之前:
DivThatYouMustHover { height: 300px; position: relative; width: 200px; }
后:
DivThatYouMustHover { height: 300px; width: 200px; } DivThatYouMustHover:hover { position:relative; }
这样,这个师的其他人的姐妹就能保持正常的定位,不会干涉布局。 它为我工作得很好! 我希望它也能帮助你。