嗨,大家好我有以下代码,当我点击某个按钮fadeTo
时,我只会点击没有#some
标记的内容
在这种情况下,fadeTo
涉及#some
代码
<div id="content">
<div id="some"></div>
</div>
#content{
width:100%;
height:100%;
outline:1px solid red;
margin:auto;
z-index:0;}
#registration,#login{
width:350px;
height:300px;
outline:1px solid blue;
display:none;
z-index:500;
position:fixed;}
$(".button").click(function(){
$("#some").fadeToggle();
$("#content").fadeTo(500,0.5);
});
答案 0 :(得分:4)
z-index
属性仅适用于非静态定位元素。即,您需要使用relative
,absolute
或fixed
个位置之一作为元素。
在这种情况下,您可能需要position: relative;
CSS声明。
老实说,我不确定你在这种情况下使用z-index
的原因。
如果您要排除#some
元素被.fadeTo()
方法处理,您可以用元素(或元素)包装#content
的内容并应用它方法给他们,如下:
$(".button").click(function(){
$("#content").find(':not(#some)').fadeTo(500,0.5);
});
<强> HTML 强>
<div id="content">
<div id="some"></div>
<p>This is a paragraph</p>
<a href="">A link here</a> <br>
<img src="http://placehold.it/50" alt="may be an image here">
</div>
<强> WORKING DEMO 强>
答案 1 :(得分:3)
我可能错了,但我非常确定你想要包含在z-index中的两个元素必须具有非静态定位。
因此,如果您创建#content 和 #registration,#login非静态元素,它应该可以正常工作。
答案 2 :(得分:2)
事实上,他们只需处于相同的堆叠环境中。为元素设置position
和z-index
属性时,会为其创建新的堆叠上下文。然后,它像任何其他元素一样。您不需要重复其子女的z-index
正如您在此示例中所看到的,第二个div <div id="div2-2">
的子项具有最高的z-index z-index:4;
但是!它仍然是&#34;&#34;&#34; div3
因为div3
拥有自己的堆叠上下文,该上下文位于div2
堆叠上下文之上。
http://jsfiddle.net/TCHdevlp/r7nyL/
这意味着z-index
在手工创建的堆叠上下文中完全没用。
答案 3 :(得分:2)
如果你有2个这样的div <div class="a">
,<div class="b">
并且两者都有一个absolute
位置,您可以写z-index
属性
.a {
z-index:1;
}
.b {
z-index:2;
}
.a
div超过.b
div