首页建站经验 如何让某一DIV层显示在上面?z-index解决问题

如何让某一DIV层显示在上面?z-index解决问题

这篇文章主要为大家详细介绍了如何让某一DIV层显示在上面?z-index解决问题,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。 很多时候我…

这篇文章主要为大家详细介绍了如何让某一DIV层显示在上面?z-index解决问题,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。

很多时候我们做网页设计的时候,总会遇到这样的情况,有多个层,每个层希望他显示在不同的地方,例如,客服漂浮,我们都希望他显示在页面组顶层,但是很多时候遇到某个DIV内容被其他层覆盖挡住了,怎么办呢?我们如何让某一DIV层显示在上面?其实,使用css属性 z-index 就能解决问题。

下面我们弄个简易的图片来看下大概层显示的示意:

如何让某一DIV层显示在上面

设置z-index让p层wrap2在上面

html代码如下

z-index 设置层上下位置

这里是wrap1

这里是wrap2

这里是wrap3



代码分析:

1、设置三层上下位置的属性是 z-index,数值小的在下面,数值大的在上面。

2、css属性 z-index 兼容所有浏览器,不用担心在IE8浏览器上不起作用。

注意问题:

在IE浏览器上,即使设置 z-index 也不能让p位于下拉菜单控件 select 的上面,同样也不能位于flash的上面,但是在Firefox、Chrome、360等主流浏览器上是没有问题的。

如何用Javascript设置p的z-index?

JavaScript 语法是:


  • object.style.zIndex="1"


假如p的id是 p1 ,则Javascript就可以这样写:


  • document.getElementById("p1").style.zIndex="1";


注意 zIndex 的大小写要正确。


有关z-index的一些知识

z-index 定义和用法

z-index 属性设置元素的堆叠顺序。拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面。该属性设置一个定位元素沿z 轴的位置,z 轴定义为垂直延伸到显示区的轴。如果为正数,则离用户更近,为负数则表示离用户更远。

z-index:auto | number

默认值:auto 堆叠顺序与父元素相等

number:无单位的整数值,可为负数

JavaScript 语法: object.style.zIndex="1"

注意问题

z-index 属性适用于那些被定义了除 position:static 外任意属性的元素中。即 z-index 仅能在定位元素上奏效(position: absolute | relative | fix)。

stacking context & stack level & z-index 是什么

stacking context 堆叠上下文

每个定位元素都归属于一个stacking context(即堆叠上下文,以下统一用堆叠上下文),最初的堆叠上下文(即根部堆叠上下文)是由根元素产生(一般页面的根元素是body),而其他的堆叠上下文则由定位元素产生(此定位元素的z-index 被定义一个非auto 的z-index 值),定位子元素会以这个基准堆叠上下文为参考,用相同的规则来决定层叠顺序。

触发stacking context

1. 定位元素并且定义了z-index为非auto;

2. FF, Safari, Chrome下元素设置opacity属性(1除外)会产生stacking context;(除了Opera)

3. IE6,7下的定位元素,无论设置了z-index,或无论z-index设置成什么值,都会产生新的 stacking context。

stack level 堆叠级别

在一个堆叠上下文中的每个box ,都有一个stack level(即堆叠级别,以下统一用堆叠级别),它决定着在同一堆叠上下文中每个box 在z 轴上的显示顺序。同一堆叠上下文中,堆叠级别值大的显示在上,堆叠级别值小的显示在下,同一堆叠级别遵循后来居上的原则(back-to-front )。不同堆叠上下文中,子元素显示顺序以父级的堆叠上下文的堆叠级别来决定显示的先后情况。于自身堆叠级别无关。说白了就是父元素的堆叠上下文的堆叠级别决定了子元素堆叠级别将来的发展,父元素堆叠级别低,则子元素堆叠级别就必然比父元素堆叠级别高的子元素堆叠级别低,即使这个子元素在他父元素内部的堆叠级别再高也无济于事。

z-index

页面中元素在z轴方向上的排列,先由堆叠上下文决定,如果是相同的堆叠上下文那么由堆叠级别决定(后来居上原则),如果又是相同的堆叠级别(同一个父元素),则由z-index 决定。

这里最容易搞混的就是堆叠级别和z-index ,大多数时候觉得他们是同一个东西,而事实上他们还是有区别的,个人认为,当没有z-index 时候,我们所依靠的准则是以堆叠级别的后来居上的原则来判定顺序。如果在一个堆叠上下文,一般就是在body 下,俩个不同的z-index 的时候,以z-index 大小来判定上下顺序,而我们平时印象里留意的最多的就是z-index ,所以往往误解了堆叠级别和z-index 的区别。


上面洋洋洒洒写了一大段,都是关于Z-INDEX的用法和介绍,应该来说是比较具体的了,有需要的朋友可以转载或者收藏。


以上就是如何让某一DIV层显示在上面?z-index解决问题的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持错新网。
本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/jianzhan/jingyan/11627.html
上一篇建站教程:网页标题对网站的影响大吗?
下一篇 如何选择网站空间:虚拟主机运行速度会受哪些因素的影响
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部