当我点击按钮时,我使用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的任何变通办法或解决方法?
答案 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
添加到您的元素中。