(几个重点概念解析)

一、层叠上下文

  1. 层叠上下文:如果一个元素拥有层叠上下文。那么就代表这个元素在页面的z轴上是有定位的。
  2. 什么元素拥有 层叠上下文:a.根元素、b.z-index值为数值的元素、c.其他属性。
  3. 层叠上下文的特性:a.层叠上下文可以嵌套、b.层叠上下文与兄弟元素独立,仅后代元素受影响、c.层叠上下文的后代层叠水平不影响其他。

二、层叠水平

  1. 什么元素拥有层叠水平:所有元素都有层叠水平。层叠上下文中的每一个元素都有层叠水平。
  2. 层叠水平的基础排列规则(不具备其他特殊属性时):a.后来居上、b.谁大谁上(z-index值得大小)

三、层叠顺序(以下层叠顺序按照由内向外排列,即z轴上的值越来越大,越靠近用户)

  1. 层叠上下文的background与border。
  2. 负z-index。
  3. block。
  4. float。
  5. inline、inline-block。
  6. z-index:auto/0。不依赖z-index的层叠上下文
  7. z-index的值为正整数。

四、z-index

  1. 什么元素可以应用z-index属性:定位的元素(relative、absolute、fixed、sticky)
  2. 应用z-index属性的元素如何层叠:1.当定位元素平级、无嵌套时:a.后来居上、b.谁大谁上。2.有嵌套:以祖先为准
  3. 特殊性:z-index值为auto的定位元素不会创建新的层叠上下文(除非是根元素,根元素天生具有层叠上下文)。只有当z-index值为数值时,才会创建。

五、我的理解:

  页面中元素的层叠情况是由层叠顺序这个规则决定的。在最初的页面里,所有元素按照默认的情况依次排列。而z-index属性像是一个外来户,打破最初的默认情况,但是层叠规则依旧不变。新的层叠层级仍然要按照旧的层叠规则进行排列。

六、感谢:

  本博客内容来自于对张鑫旭大神博客的学习与慕课网张鑫旭大神对于z-index的讲解的理解。

  张鑫旭大神博文地址为:http://www.zhangxinxu.com/wordpress/?p=5115

css之z-index深度解析的更多相关文章

  1. mybatis 3.x源码深度解析与最佳实践(最完整原创)

    mybatis 3.x源码深度解析与最佳实践 1 环境准备 1.1 mybatis介绍以及框架源码的学习目标 1.2 本系列源码解析的方式 1.3 环境搭建 1.4 从Hello World开始 2 ...

  2. [WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析

    [WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析 标签: webkit内核JavaScriptCore 2015-03-26 23:26 2285 ...

  3. Kafka深度解析

    本文转发自Jason’s Blog,原文链接 http://www.jasongj.com/2015/01/02/Kafka深度解析 背景介绍 Kafka简介 Kafka是一种分布式的,基于发布/订阅 ...

  4. SpringMVC 源码深度解析<context:component-scan>(扫描和注冊的注解Bean)

    我们在SpringMVC开发项目中,有的用注解和XML配置Bean,这两种都各有自己的优势,数据源配置比較经经常使用XML配置.控制层依赖的service比較经经常使用注解等(在部署时比較不会改变的) ...

  5. kubernetes之configmap,深度解析mountPath,subPath,key,path的关系和作用

    参考:https://www.cnblogs.com/breezey/p/6582082.html 我们知道,在几乎所有的应用开发中,都会涉及到配置文件的变更,比如说在web的程序中,需要连接数据库, ...

  6. 深度解析 Vue 响应式原理

    深度解析 Vue 响应式原理 该文章内容节选自团队的开源项目 InterviewMap.项目目前内容包含了 JS.网络.浏览器相关.性能优化.安全.框架.Git.数据结构.算法等内容,无论是基础还是进 ...

  7. VueRouter 源码深度解析

    VueRouter 源码深度解析 该文章内容节选自团队的开源项目 InterviewMap.项目目前内容包含了 JS.网络.浏览器相关.性能优化.安全.框架.Git.数据结构.算法等内容,无论是基础还 ...

  8. Spark RDD深度解析-RDD计算流程

    Spark RDD深度解析-RDD计算流程 摘要  RDD(Resilient Distributed Datasets)是Spark的核心数据结构,所有数据计算操作均基于该结构进行,包括Spark ...

  9. Kafka深度解析(如何在producer中指定partition)(转)

    原文链接:Kafka深度解析 背景介绍 Kafka简介 Kafka是一种分布式的,基于发布/订阅的消息系统.主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能 ...

  10. 程序员收藏必看系列:深度解析MySQL优化(二)

    程序员收藏必看系列:深度解析MySQL优化(一) 性能优化建议 下面会从3个不同方面给出一些优化建议.但请等等,还有一句忠告要先送给你:不要听信你看到的关于优化的“绝对真理”,包括本文所讨论的内容,而 ...

随机推荐

  1. underscorejs-map学习

    2.2 map 2.2.1 语法: _.map(list, iteratee, [context]) 2.2.2 说明: 对集合的每个成员依次进行某种操作,将返回的值依次存入一个新的数组.接收3个参数 ...

  2. 利用路由修改thinkphp框架开发的后台地址

    一般我们写前台是home 后台是 admin那么我们的后台是 域名/admin 那我们要随时修改这个地址是非常麻烦的事情开始可能会想到,就是把模块名称改掉,或者分组(3.1版)这样的话不但要改配置,连 ...

  3. nginx反向代理取得IP地址

    nginx反向代理后,在应用中取得的ip都是反向代理服务器的ip,取得的域名也是反向代理配置的url的域名,解决该问题,需要在nginx反向代理配置中添加一些配置信息,目的将客户端的真实ip和域名传递 ...

  4. k-近邻算法理解

    左图中,绿色圆要被决定赋予哪个类,是红色三角形还是蓝色四方形?如果K=3,由于红色三角形所占比例为2/3,绿色圆将被赋予红色三角形那个类,如果K=5,由于蓝色四方形比例为3/5,因此绿色圆被赋予蓝色四 ...

  5. MVC中的路由

    authour: chenboyi updatetime: 2015-05-02 16:10:04 friendly link:   目录 1,思维导图 2,MVC处理机制简图(讲解路由解析) 3,默 ...

  6. file upload download

    1. 文件上传与下载 1.1 文件上传 案例: 注册表单/保存商品等相关模块! --à 注册选择头像 / 商品图片 (数据库:存储图片路径 / 图片保存到服务器中指定的目录) 文件上传,要点: 前台: ...

  7. Stack集合 Queue队列集合 Hashtable哈希表

    Stack集合 干草堆集合 栈集合 栈;stack,先进后出,一个一个赋值,一个一个取值,安装顺序来. 属性和方法 实例化 初始化 Stack st = new Stack(); 添加元素 个数 Co ...

  8. cf C. Divisible by Seven

    http://codeforces.com/contest/376/problem/C 题意:给你一个大数最多含有10^6个数字,这里面必须含有1,6,8,9,然后重新排列找出一个能被6整除的数. 思 ...

  9. HTML5 datalist实现suggest功能

    1.例子 <!DOCTYPE html> <html> <head> <title>HTML5 datalist tag</title> & ...

  10. 【性能测试】【Jmeter】学习(2)——录制一段脚本

    打开JMeter工具,录制一段脚本(我做的是录制登陆网站后点击设备的开关设定,然后再退出) 1).创建一个线程组(右键点击“测试计划”--->“添加”---->“线程组”) 2).添加录制 ...