Z-index不起作用。弹出窗口隐藏在图层下

时间:2012-06-13 08:31:15

标签: html css popup z-index

我正在帮助维护这个网站http://www.groupme.my/national/

对于具有多个选项列表的特定交易,当您点击“立即购买”按钮时,下面的交易将部分涵盖选项列表弹出窗口。例如,点击此处“立即购买”按钮“[55%折扣]韩式手提包......”。

请注意,并非每笔交易都附带选项。如果没有选项,点击“立即购买”将直接带您进入购物车。

我试图放入z-index,但它似乎没有做任何事情。

请帮助我们检查一下如何解决此问题。感谢。

4 个答案:

答案 0 :(得分:3)

z-index: 0中的content-wrapper-top似乎是个问题;试着删除它。

评论后添加了EDIT:我在生成CSS中找到了这个z-index(第713行):

.content-pane-index {
    float: left;
    width: 737px;
    position: relative;
    z-index: 0;<------------------------ HERE
} 

答案 1 :(得分:2)

如果我理解你的关注点,淡入的元素的下边缘位于下方的项目后面,对吗?

如果这是问题,那么z-index不会对你有所帮助,因为淡入的东西被附加到一个div(并且它正在它上面)但是它将落后于div位于页面*之后的那个淡化的一个被连接到的页面上,所以,渐弱的div将在下一个之后,无论如何。

处理这个的最简单的方法是以相反的顺序绘制它们,以便div在向上移动时朝向zTOP移动,或者换句话说,将它们的z顺序设置为与它们的顺序相反'画了,所以如果你有10个项目,第一个项目的zIndex为10,下一个项目为9,依此类推。

答案 2 :(得分:1)

Dr.Dredel很好地解释了这个问题,但是如果你不想重新排序HTML,我有一个解决方法,也许会有点愚蠢,但我认为它应该可行,我会给你的想法,我没有任何代码来测试任何代码:)

首先,你的z-index必须没有那么大的数字,比如1000然后50000!使用较小的单位,如5 10 15等等,如果您首先使用我的代码,我的代码将起作用,我使用了必须在页面上的最大数字。

我将使用jQuery,“立即购买”按钮,在显示流行代码后添加此代码:

$(this).parent().parent().parent().parent().parent().parent().css("z-index","999");

此代码表示如果buynow a标记和a标记的父级的父级,则查找父级,以及具有content-pane-index类名称且最多添加z-index的div

您也可以使用此代码:

$(this).parents(".content-pane-index").css("z-index","999");

对于关闭按钮,您需要恢复之前添加的z-index,因此在关闭pop代码后也要添加此代码:

$(this).parent().parent().parent().parent().parent().parent().parent().css("z-index","0");

$(this).parents(".content-pane-index").css("z-index","0");

我希望你至少有一个想法:)

我的代码可能需要修复,例如添加或删除一个.parent()方法,或更改与.parents()一起使用的选择器。

我喜欢解决方法:P

答案 3 :(得分:0)

如果要显示popup,请从弹出式CSS中删除z-index,例如。我在其他css中使用z-index: 1000

但是我使用其他CSS弹出窗口,所以进入弹出式CSS&amp;找到z-index并将其删除。