如何避免父div的Z-index?

时间:2013-11-21 14:22:16

标签: jquery css html

我想避免使用父div z-index。是否可以使用任何插件?

<div id="1"> 
  <div id="2"></div>
</div> 

div id 1 = 950的z-index

div id 2 = 1的z-index,但在点击事件中,它等于z-index的9999。

我的弹出窗口(exposemask)等于z-index的9998。

我想要做的是在弹出窗口处于活动状态时显示div id 2。但是,div id 1会覆盖其z-index。因为它是div的父级id 2,我不应该使用div更改id的z索引{ {1}}。

1 个答案:

答案 0 :(得分:0)

首先,你不能使用数字作为css选择器按照     css grammar

如果父级不需要z-index,您可以执行以下操作:

如果你没有给父div提供z-index怎么办?但是只要给你的子元素赋一个负的z-index值,所以它隐藏在父元素的后面:

z-index: -1;

每当弹出窗口处于活动状态时,您将为子元素设置一个正(弹出的z-index更高)z-index:

$('#div2').css('z-index', '2');

jsFiddle example

如果你的父母总是需要一个z-index(例如,如果这个父元素需要覆盖其他带有z-index的元素)那么就不可能了:

这是不可能的。如本主题所述:z-index between Children and Parents

  

所有子元素z-index都是根据父元素计算的   元件。所以具有更高z-index的2个元素之一将是   在另一个及其所有子元素之上呈现。

但是,您可以从父元素中获取子元素。


我还建议你在需要时将z-index增加1而不要使用大数字作为99999.使用大数字你不会知道你使用了多少z索引。