• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >CSS > 举例详解CSS的z-index属性的使用

举例详解CSS的z-index属性的使用

作者:weakish 字体:[增加 减小] 来源:互联网 时间:2017-08-06

本文主要包含CSS,z-index等相关知识,weakish 希望在学习及工作中可以帮助到您

通常认为HTML页面是二维的,但实际上,CSS还有一个z-index属性,允许层叠元素。

    所有的盒模型元素都处于三维坐标系中。 除了我们常用的横坐标和纵坐标, 盒模型元素还可以沿着“z轴”层叠摆放, 当他们相互覆盖时, z轴顺序就变得十分重要。

-- CSS 2.1 Section 9.9.1 - Layered presentation
默认的摆放规则

假定元素没有指定z-index属性,那么元素按照如下顺序叠放(从底到顶)

    根元素的背景和边界
    普通流(无定位)里的块元素(没有position或者position:static;)按HTML中的出现顺序堆叠
    定位元素按HTML中的出现顺序堆叠
    2015718163212335.png (471×365)

浮动

对于浮动的块元素来说,堆叠顺序变得有些不同。浮动块元素被放置于非定位块元素与定位块元素之间:

    根元素的背景与边框
    位于普通流中的后代块元素按照它们在 HTML 中出现的顺序堆叠
    浮动块元素
    常规流中的后代行内元素
    后代中的定位元素按照它们在 HTML 中出现的顺序堆叠
2015718163243040.png (563×255)

使用 z-index

如果需要改变默认的摆放顺序,只需给元素指定z-index。z-index必须是整数,体现了元素在z轴的位置:

    底层:距离观察者最远
    ……
    -3 层
    -2 层
    -1 层
    0 层 (默认)
    1 层
    2 层
    3 层
    ……
    顶层:最接近观察者

没有指定z-index的时候,所有元素默认在0层渲染。多个元素的z-index属性相同时,将按照上文描述的顺序布局。

使用z-index排序的例子:
2015718163539584.png (468×365)

注意,div#5的z-index无效,因为未指定position属性。
堆叠上下文

指定z-index属性将构造一个堆叠上下文。

以下元素构成堆叠上下文指:

    根元素html
    定位元素,且其z-index值不为auto
    opacity小于1的元素
    在移动WebKit、Chrome22+以上,指定position: fixed的元素总是会构造堆叠上下文,即使z-index为auto。

堆叠上下文中的子元素按照前述顺序摆放。堆叠上下文内部的子堆叠上下文的z-index只在父堆叠上下文中有意义。

总而言之:

    z-index不为auto,opacity小于1的元素会构建堆叠上下文。
    堆叠上下文可以嵌入其他堆叠上下文。
    每个堆叠上下文和它的同级上下文是独立的。
    每个堆叠上下文是自包含的。
2015718163605289.png (465×396)

您可能想查找下面的文章:

  • css小技巧
  • 各大网站CSS初始化代码
  • css权重问题
  • CSS实现鼠标上移图标旋转效果
  • 使用CSS3制作一个简单的进度条(demo)
  • 用纯CSS实现饼状Loading等待图效果
  • 利用CSS3伪元素实现逐渐发光的方格边框
  • CSS3实现内凹圆角的实例代码
  • 利用HTML5+CSS3实现3D转换效果实例详解
  • css3+伪元素实现鼠标移入时下划线向两边展开的效果

相关文章

  • 2017-08-06CSS:Table-cell属性的妙用让div也能享受table定位的好处
  • 2017-08-06CSS对浏览器的兼容性技巧总结
  • 2017-08-06浏览器的重绘repaints与重排reflows深入分析
  • 2017-08-06IE6中DIV使用了relative不定义宽度导致right定位误差
  • 2017-08-06简单但很实用的5个css属性
  • 2017-08-06CSS解决文字与图片不能水平居中对齐的问题
  • 2017-08-06规范HTML代码可以节省修改代码的时间
  • 2017-08-06CSS中的字体大小设置属性总结
  • 2017-08-06CSS3实现各种图形的示例代码
  • 2017-08-06CSS 面向对象CSS FAQ

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • CSS3的常见transformation图形变化用法小结
    • ie6不兼容hover ie6 a hover属性失效解决办法
    • 用CSS手写导航条没有任何图片附效果图
    • 两侧列固定中间列变宽Div布局示例
    • 区别div和span、relative和absolute、display和visibility
    • CSS实现当鼠标移到input上时鼠标变为不可输入的状态
    • html 滚动条在IE6和IE7中兼容性问题
    • CSS 理解盒子模型
    • 大小不固定的图片、多行文字的水平垂直居中实现方法
    • 使用CSS3中的calc()属性来以算式表达尺寸数值

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有