提供zblog模板_zblog主题_wordpress模板的下载和定制

转载:导航下拉菜单被底下的幻灯片遮住的解决办法

天兴工作室 2014-12-04 18:24 教程 8690 2 评论


之前本站写过一篇”下拉导航菜单被遮住了怎么办?“,但当时只是知道这样做可以解决,问题却没有完全弄清楚。今天无意中在”大话主席“的博客里面看到这篇文章,受益匪浅,转载下,希望能帮助到更多的朋友了解此问题的原理。

导航下拉菜单被banner遮住/显示不全,这种问题是老生常谈了,经常有新手会问,有些人做了2、3年的还会经常犯错,而且好多人还以为是js问题,其实这是基本的css知识。我觉得还是有必要写一遍文章解释给新手们。

导航下拉菜单被遮住,那是因为层叠关系错误

我们必须理解层叠关系满足的2个条件:

  • 1、必须是同级;

  • 2、二者分别设定了position:relative 或 absolute 或 fixed;

  • 这时候通过设置z-index才有效

看看我们比较常见的网页布局:

html:

<!-- 头部 -->
<div class="header">

    <div class="nav">
        <ul class="mNav">
            这是下拉菜单
            .........
        </ul>
    </div>

</div>

<!-- banner -->
<div class="banner">
    <div class="slider">这是焦点图....</div>
</div>

错误css

.header{ }
.header .nav{ z-index:9999; height:50px; color:#fff; text-align:center;  }
.banner{ position:relative; margin:10px auto; height:300px; }

上面css里吧nav的z-index设置成9999,但发现下拉还是被挡住,这是因为此时banner设置了position,会在nav上面。

想要nav在banner上面,就需要向上查找,发现nav的外层(header)和banner在同一级(满足条件1)

这时候同时设置header和banner的position和z-index,使header在banner上面即可,此时nav的z-index已经无关重要了。

正确css:

.header{ position:relative; z-index:1 }
.header .nav{  height:50px; color:#fff; text-align:center; }
.banner{ position:relative; z-index:0; margin:10px auto; height:300px; }

例子2:

如果你的html结构这样的:

<div class="header">

    <div class="nav">
        <ul class="mNav">
            这是下拉菜单
            .........
        </ul>
    </div>

</div>

<!-- content -->
<div class="content">
    <div class="banner">
        <div class="slider">这是焦点图....</div>
    </div>
</div>

那么分别设置header和content的position和z-index,因为2者在最外层并且同级。

其它同理。

二、导航下拉菜单显示不全是因为外层设置了overflow:hidden

很多时因为网页比较复杂,层级比较多,所以经常忽略了外层或者外外外层设置了overflow:hidden导致导航下拉菜单显示不全,其实只要仔细查找就能解决问题,把overflow:hidden去掉,如果需要清除浮动,可以用其它方法,百度css清除浮动就有了。

原文地址:http://www.superslide2.com/blog/?p=102


没有找到能解决你问题的教程?

您可以试着搜索一下或者直接在线提问。我们也提供收费技术支持,有需要可以在线联系我们。

在线提问 在线客服

2 位网友评论:

  • 雨夜

    雨夜 10年前 (2014-12-04) 回复

    我喜欢 z-index:999999只要大点就好(实际是懒。。。),嘿嘿。

    • 天兴工作室

      天兴工作室 10年前 (2014-12-05) 回复

      z-index:999999... o(╯□╰)o 我设置了999幻灯片直接不见了

欢迎 发表评论: 取消回复

请填写验证码
  • 最新文章
  • 热文排行
  • 最多评论
标签聚合