1.z-index基础 z-index属性指定了元素及其子元素的[z顺序],而[z顺序]可以决定 当元素发生覆盖的时候,哪个元素在上面。通常一个较大z-index值的元素会覆盖较低的那一个。...z-index支持的属性值: 1. z-index:auto;默认值,如果不对z-index设置,默认为auto; 2. z-index:;整数值,z-index:1,z-index:...2等 3. z-index:inherit;继承 z-index基本特性: 1....Paste_Image.png 当第一个图片元素的祖先元素z-index值为auto时,祖先优先原则就会失效,z-index:auto可以看成是z-index:0,尽管第二个图片元素的祖先元素z-index...7.z-index与其它CSS属性层叠上下文(非定位元素层叠上下文和z-index关系) 1.不支持z-index的层叠上下文元素的层叠顺序均是z-index:auto级别(不支持z-index的层叠上下文
在做的过程中,发现了一个很简单却又很多人应该碰到的问题,设置Z-INDEX属性无效。...在CSS中,只能通过代码改变层级,这个属性就是z-index,要让z-index起作用有个小小前提,就是元素的position属性要是relative,absolute或是fixed。...eg:z-index层级不起作用,浮动会让z-index失效,代码如下: 1 DIV style="POSITION: relative; Z-INDEX: 9999"> 2 <</code...2.第二种情况 IE6下,层级的表现有时候不是看子标签的z-index多高,而要看整个DOM tree(节点树)的第一个relative属性的父标签的层级。...; Z-INDEX: 1000"> 3 DIV style="POSITION: absolute; Z-INDEX: 9999"> IMGsrc="http://www.yuanchuang.net
CSS3 Z—Index 详解 z-index属性规定元素的堆叠顺序,值越高就会显示在上面。...789 div2比div3的z-index..."div1" style="background-color:red">123 由于div2 3 脱离标准流所以在上面 因为div2的z-index...的值,但不意味着div0没有值,它的值是0,当你修改其他元素的z-index值是负数小于 0是 div0自然就显示在了最外层, 现在的顺序是 div1 div0 div3 div2 能不能让里面的元素不显示在外层...{ height: 50px; width:60px; } */ /* .div2{ z-index
注意,此处的c坐标并不是z-index。下图中的坐标名有误,z应该是c。 ?...为0或者auto 具有正的z-index的,且position值不是static(非正常流中)的子box的Stacking Context,且z-index数值越小,其c坐标越小 你需要注意到的是,z-index...由于#b1具有正的z-index,而#b2具有负的z-index,所以#b1被组合到了#b2的上面。...你可以试着把#b1的z-index改成-2,那么它就变成了第二类的box(和#b2一样),又因为它的z-index比#b2来得小,所以它会被组合到#b2之后。...总结 z-index只在同一个Stacking Context的组合过程中,参与各个子box的重叠顺序的决定。但是页面box的重叠关系并非仅仅和z-index有关。
对于同级元素,position不为static且z-index存在的情况下z-index大的元素会覆盖z-index小的元素,即z-index越大优先级越高。...IE6/7下position不为static,且z-index不存在时z-index为0,除此之外的浏览器z-index为auto。...z-index为auto的元素不参与层级关系的比较,由向上遍历至此且z-index不为auto的元素来参与比较。...A B <div id="c" style="<em>z</em>-<em>index</em>.... <em>z</em>-<em>index</em> 为 0 的节点与没有定义 <em>z</em>-<em>index</em> 在同一层级内没有高低之分; 但 <em>z</em>-<em>index</em> 大于等于 1 的节点会遮盖没有定义 <em>z</em>-<em>index</em> 的节点; <em>z</em>-<em>index</em> 的值为负数的节点将被没有定义
所以现在我们的目的就转变成了:如何合理设置元素的 z-index,减少同级元素之间的影响。...暂时不对 z-index 做处理 3. 结合上文中会触发复合层生成条件 4. 除去页面上因为动画暂时还没有出现的元素。...由进度条容器导致的两个复合层,其实只需要把父元素 – 进度条容器的 z-index 提高,就能解决同级复合层影响的问题。...06.png 07.gif 其他 上面是分析了页面上的第一个出现的动画,有木有发现,复合层的出现很像 js 的冒泡过程,而我们要做的就是尽可能的阻止动画的“冒泡”。...z-index 越高的元素,它做动画时所波及的元素越少。在与flash、canvas还有video无关的页面上,总结一下原则: 1. 动画元素的 z-index 要高于同级无动画元素 2.
对于同级元素,position不为static且z-index存在的情况下z-index大的元素会覆盖z-index小的元素,即z-index越大优先级越高。 3....IE6/7下position不为static,且z-index不存在时z-index为0,除此之外的浏览器z-index为auto。...4. z-index为auto的元素不参与层级关系的比较,由向上遍历至此且z-index不为auto的元素来参与比较。...A B <div id="c" style="<em>z</em>-<em>index</em>...<em>z</em>-<em>index</em> 的节点; <em>z</em>-<em>index</em> 的值为负数的节点将被没有定义 <em>z</em>-<em>index</em> 的节点覆盖.
前言 z-index是一个用于控制文档中图层顺序的属性。具有较高z-index值的元素将会出现在具有较低值的元素之上。...如果在footer元素上设置z-index: 1,在main元素上设置z-index: 2,以及在header元素上设置z-index: 3,那么默认层叠顺序将会完全颠倒。...表面上看起来很简单,更高的z-index值有更高的元素层叠顺序。因此z-index: 9999 总是位于z-index: 9上面。事实果真如此吗?不幸的是,实际情况要更复杂一些。...按照这种思路可以写成如下格式: Header: z-index: 5 Main: z-index: 4 Box 1: z-index: 4.6 Box 2: z-index: 4.1 Box 3: z-index...z-index策略 让我们用我在项目中应用z-index的一个简单策略来总结一下。
随后,我们会谈一些关于层叠的内容,以更好地理解在z-index的背后到底发生了什么。 ---- z-index 基础 我相信你一定对三维坐标空间很熟悉。...如果你只看层叠等级2, 6, 7(那些提到了z-index的等级),很有可能你会发现这和你对于z-index的理解相符。...正z-index值比0 z-index值更高一层,0 z-index值又比负z-index值高一层。 尽管这也很有可能是我们大部分人停止思考关于这些层叠层的地方。...事实上,我们真正得到的是如下结果: .one — z-index = 10 .two — z-index = 10.100 .three — z-index = 10.150 .four — z-index...希望这些例子能帮助你厘清为什么有时一个有着较大z-index值的元素却显示在只有较小z-index值的元素的后面。 ---- 结论 当你初次遇到z-index时,它就像一个非常简单、易于理解的属性。
z-index:auto;与z-index:0;的异同 我们下面会介绍哪些元素会创建层叠上下文,但是不代表能够创建层叠上下文的元素就可以显式地设置 z-index 。...这些元素中不能设置 z-index 的,他们最后的表现其实就是 z-index:auto; 。...那 z-index:auto; 和 z-index:0; 的相同之处在于,计算层叠等级的时候指定为 auto 的 index 实际计算值就是 0 。...不同之处在于, z-index:auto; 不能创建层叠上下文,但是 z-index:0; 却可以。...CSS2.1 中规定的 根元素 HTML z-index 不为 auto 的定位元素——实际情况有出入,z-index:auto;与z-index:0;的异同 一节已经讲了 CSS3中新增的 z-index
你真的会用 z-index 么? 如果你的 css 里面存在大量这样的代码 z-index:66、666、999、9999 可能你还不太理解 z-index ? ? 2....但“z 轴”顺序,不完全由 z-index 决定,在层叠比较复杂的 HTML 元素上使用 z-index 时,结果可能让人觉得困惑,甚至不可思议。这是由复杂的元素排布规则导致的。 ? 2.1....不含 z-index 元素如何堆叠?...2.3. z-index 如何影响堆叠? z-index 属性指定了一个具有定位属性的元素及其子代元素的 z-order。...最佳实践(不犯二准则) 对于非浮层元素,避免设置 z-index 值,z-index 值没有任何道理需要超过2,原因是: 定位元素一旦设置了 z-index 值,就从普通定位元素变成了层叠上下文元素,
css中z-index属性 1、z-index属性值:当默认值为0时,z-index属性可以设置各元素之间的重叠关系。 2、z-index值大的层位于其值小的层之上。... width: 100px; height: 100px; } .a { background-color: pink; z-index...: 1; } .c { background-color: green; z-index: 2; top: ...20px; left: 20px; } .b { background-color: red; z-index: 3;
重点:z-index要配合position一起用,否则无效; 效果图: 源代码: <div class="background-icon...position: absolute; top: 0; left: 0; width: 72px; height: 72px; <em>z</em>-<em>index</em>
1、z-index基础 z-index含义:指定了元素及其子元素的”z顺序“,而”z顺序“可以决定元素的覆盖顺序。z-index值越大越在上面。 ...5、z-index与层叠上下文 ⑴ 从层叠顺序上讲,定位元素默认z-index:auto可以看成是z-index:0,但是从层叠上下文来讲,两者却有着本质的差异; ⑵ z-index不为auto...z-index与创建层叠上下文:z-index不是auto的情况下,元素会创建层叠上下文。(IE8+) z-index受限于层叠上下文:父元素z-index为数值的情况下,会优先展现层叠顺序。...7、z-index与其他属性层叠上下文 不支持z-index的层叠上下文元素的层叠顺序均是z-index:auto级别: ? 依赖z-index的层叠上下文的层叠顺序却决于z-index值。...8、z-index相关实践分享 最小化影响原则: ? 不犯二准则: ? 组件层级计数器: ? 通过JS获得body下子元素的最大z-index值。
同一个stacking context的z-index才具有可比性,也就是说在讨论z-index时必须带说明是哪个stacking context下的z-index。...前提:boxes属于同一个stacking context,并且z-index不同 规则:z-index属性值大的box更靠近用户 </...才具有可比性,也就是说在讨论z-index时必须带说明是哪个stacking context下的z-index。 ...z-index生效的阀门 z-index属性值仅对positioned box生效,而non-positioned box的z-index永远为0。
开发时候遇到了一个问题,webpack 打包后 css 的 z-index 值与原始值不符,导致 iframe 里面的 toast 被外面 z-index 较小的 dialog 覆盖。...更改 toast 的 z-index,发现没起作用,页面上的 z-index 依然是之前的值,而不是 css 中赋予的值。给 z-index 加上 !...这本来是 webpack 插件的一个善举(让 z-index 数值更加合理),但是具体情况来看,这里显然不需要这个 “善举”。...的值,而在浏览器中观察弹框的 z-index,果然是没有经过 cssnano rebase 的。...于是仿照 element-ui 的做法,把 z-index 相关的 css 用 js 动态插入到 DOM 中,就完美地解决了这个问题,并且没有对其它项目产生影响。
、内联的、非定位的子元素 Z-index 为 0:设置了 z-index 为 0 的、定位的子元素以及由它所产生的层叠上下文 Z-Index 为正数 :设置了 z-index 为正数的、定位的子元素以及由它所产生的层叠上下文...如果只着眼于层叠等级二、六和七(也就是涉及到 z-index 的等级),那么大部分时候,我们对于 z-index 的理解是正确的。...由于 div.two 位于 div.one 中,所以它的 z-index 是和 div.one 的层叠上下文相关的,也就是说,实际表现出来的 z-index 是下面这样的: .one —— z-index...= 10 .two —— z-index = 10.100 .three —— z-index = 10.150 .four —— z-index = 50 div.one 和内部包含的一切将会在层级上低于...我也曾经被 z-index 这么坑过一两次。我们都曾疑惑一个问题,为什么一个 z-index 非常大的元素,在层级上始终无法超过一个 z-index 比它小很多的元素?
前言 上篇文章主要介绍了CSS样式更改篇中的框模型、定位、浮动、溢出基础知识,这篇文章主要分享CSS样式更改中的裁剪、Z-Index、清除、改变元素的特性基础知识,一起来看看吧。...对元素某块区域就行剪切 img{ clip:rect(23px,14px,45px,54px) } rect (top, right, bottom, left) 设置元素的形状 auto 不应用任何剪裁 2.Z-Index...设置元素的堆叠顺序 div{ z-index:1 } p{ z-index:10 } a{ z-index:-1 } z-index 值越大,所在的元素越靠前显示 3.清除Clear 专门用来清除浮动...元素会作为一个表格标题显示(类似 ) 此时的块级元素div就有了内联元素的特性了 参考文档:W3C官方文档(CSS篇) 总结 这篇文章主要介绍了CSS样式更改篇中的裁剪、Z-Index
前言 关于z-index,每个人都会用,但大多人都不理解其真正的生效机制。最近做项目有很多用到z-index的地方,才发现以前用的一知半解,所以上网查了一些资料梳理了一下。下文参考自!...What No One Told You About Z-Index,文中介绍了很多关于z-index使用的关键点。...然后将第一个span元素的z-index设置为1,其他两个不设置。...堆叠顺序 z-index表面上的规则似乎很简单,有一个更大z-index的元素会叠放在较小的z-index元素上面。但事实并非如此,这个规则只适用于一个相对的范围。...当引入z-index属性时,规则稍微变得复杂一点。 1) z-index只在设置了position属性的元素上有效,没有position属性的元素上的z-index属性均不生效。
领取专属 10元无门槛券
手把手带您无忧上云