z-index在子节点设置得很大却不生效?

Posted pixelK

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了z-index在子节点设置得很大却不生效?相关的知识,希望对你有一定的参考价值。

首先,z-index属性必须在position属性设置之后才能起作用。 对于同级元素,position不为static且z-index存在的情况下z-index大的元素会覆盖z-index小的元素,即z-index越大优先级越高。不同级元素呢?看下面的例子:

<div id="a" style="position:relative;z-index:1;">
     <div id="a1" style="position:relative;z-index:10;background-color: blue;width: 100px;height: 100px;">A-1</div>
</div>

<div id="b" style="position:relative;z-index:1;">
     <div id="b1" style="position:relative;z-index:1;background-color: red;left: 50px;top: -50px;">B-1</div>
</div>

id=\'a\'和id=\'b\'的我们分别称为a、b元素。

首先,a、b是同级的,并且z-index相同,那么b将覆盖a;

但是a的子元素a1的z-index是10,b的子元素b1的z-index是1,到底是red在上面还是blue在上面呢?效果图如下:

为什么?

因为上述情况下子节点a1的z-index是取决父节点的,永远不可能超过父节点。所以即使它的z-index设置的很高,还是不能覆盖b,当然包括b1。

 

以上是关于z-index在子节点设置得很大却不生效?的主要内容,如果未能解决你的问题,请参考以下文章

为啥微信小程序在iOS真机测试z-index设置不生效

Linux ssh 免密登录设置成功,却不生效

DOM层级顺序与z-index

DOM层级顺序与z-index

为啥微信小程序在iOS真机测试z-index设置不生效

为啥微信小程序在iOS真机测试z-index设置不生效