层叠上下文: 三维概念,表示元素在Z轴的位置
层叠可嵌套,组合成一个分层次上下文
每个层叠上下文和兄弟元素独立,进行层叠变化或渲染时,只考虑后代元素
每个层叠上下是自成体系的
层叠顺序
1 background~border
2 负z-index
3 block盒子
4 float浮动盒子
5 inline/inline-block盒子
6 z-index:auto/z-index:0
7 正z-index
特性
支持负值
支持 CSS3 动画
css2.1中需要和定位元素一起使用
如定位元素 z-index 发生嵌套: 后来居上的准则,哪个大哪个上
如发生嵌套: 祖先优先原则,前提 z-index 是数值而非 auto , auto 不创建层叠上下文
运用
定位元素默认 z-index: auto; /z-index: 0
z-index 不为 auto 的定位元素,会创建层叠上下文
z-index 层叠顺序的比较止步于父级层叠上下文
避免 z-index 嵌套层级关系混乱
避免 z-index 混乱,一闪比一山高的样式问题
可利用负值,作隐藏