美文网首页
层叠上下文与层叠顺序

层叠上下文与层叠顺序

作者: Allan要做活神仙 | 来源:发表于2019-03-03 22:48 被阅读0次

    20190303-22:47于家中

    一旦普通元素具有了层叠上下文,其层叠顺序就会变高。那它的层叠顺序
    究竟在哪个位置、哪个级别呢?

    ps:个人理解上面这句话:层叠上下文即层叠上下文环境,位于最底层
    一旦普通元素进入层叠上下文环境,其层叠顺序会变高。

    因此,页面中所有的元素一定处于至少一个“层叠结界”中。

    这里需要分两种情况讨论:

    (1)如果层叠上下文元素不依赖 z-index 数值,则其层叠顺序是 z-index:auto,可看成 z:index:0 级别;

    (2)如果层叠上下文元素依赖 z-index 数值,则其层叠顺序由 z-index 值决定。

    我们上面提供的层叠顺序图实际上还缺少其他重要信息。我又花工夫重新绘制了一个更完整的 7 阶层叠顺序图,如图 7-7 所示。

    image.png

    这下大家应该知道为什么定位元素会层叠在普通元素的上面了吧?其根本原因就是:元素 一旦成为定位元素,其 z-index 就会自动生效,此时其 z-index 就是默认的 auto,也就是 0 级别,根据上面的层叠顺序表,就会覆盖 inline 或 block 或 float 元素。而不支持 z-index 的层叠上下文元素天然是 z-index:auto 级别,也就意味着,层叠上下文元素和定位元素是 一个层叠顺序的,于是当它们发生层叠的时候,遵循的是“后来居上”准则。

    相关文章

      网友评论

          本文标题:层叠上下文与层叠顺序

          本文链接:https://www.haomeiwen.com/subject/borvuqtx.html