z-index不起作用?

时间:2012-10-26 17:05:45

标签: html css z-index

当我点击按钮时,我使用jQuery制作div apear - >背景应该得到0.8的不透明度和出现的div将允许用户让他登录 - 当我不使用z-index时,每个人都好,但我有4个div(标题,内容,页脚和登录div -Form)标头必须有z-index:3和内容z-index:2 - 否则阴影将无法按预期工作。

使用jQuery我在包含完整边的body标签之后添加一个div - 所以我可以设置不透明度,但是我必须设置form-div的z-index高于具有不透明度的div的z-index - 但它不起作用。 form-div的z-index为999,另一个div为5

z-index的任何变通办法或解决方法?

4 个答案:

答案 0 :(得分:45)

更改元素的位置。

position: relative;

答案 1 :(得分:7)

老问题,但如果有其他人来寻找解决方案,我会发帖。

z-index并不像听起来那么简单。在element1 = 999和element2 = 1上制作z-index并不总是意味着element1将在前面。

我有一次类似的情况,当我需要元素在前面时,我用jQuery改变了z-index,并且它工作正常。这意味着z-index关心你给它那个索引的时间。如果你想给它一个999的值,那么当你希望它在前面的时候给它正确。 这可能会使其保持最佳状态,但其他规则可能仍然适用,即:堆叠顺序。这是一个非常大的话题,所以我只想指出你: http://philipwalton.com/articles/what-no-one-told-you-about-z-index/

答案 2 :(得分:7)

你需要对父元素做点什么。

  

溢出:可见;

那就是你。

答案 3 :(得分:2)

您需要确保在CSS中定义position。 如果您希望将z-index实施为HTML的常规元素,请将position:relative添加到您的元素中。