下拉菜单项不可见

时间:2014-09-07 12:34:23

标签: html5 css3

我制作了一个导航菜单栏以及两个下拉菜单,每个菜单包含3个项目。我的问题是,在这个菜单下面,我有一个滑块,所以当我将鼠标悬停在下拉列表时,三个项目中的两个隐藏在滑块后面。

我该如何解决这个问题?

我的HTML:

<div id="nav">
    <div id="nav_wrapper">
        <ul>
            <li><a href="#">item #1</a>
            </li>
            <li> <a href="#">item #2</a>
            </li>
            <li> <a href="#">dropdown #1</a>

                <ul>
                    <li><a href="#">dropdown #1 item #1</a>
                    </li>
                    <li><a href="#">dropdown #1 item #2</a>
                    </li>
                    <li><a href="#">dropdown #1 item #3</a>
                    </li>
                </ul>
            </li>
            <li> <a href="#">dropdown #2</a>

                <ul>
                    <li><a href="#">dropdown #2 item #1</a>
                    </li>
                    <li><a href="#">dropdown #2 item #2</a>
                    </li>
                    <li><a href="#">dropdown #2 item #3</a>
                    </li>
                </ul>
            </li>
            <li> <a href="#">item #3</a>
            </li>
        </ul>
    </div>
</div>

我的CSS:

#nav {
    background-color: #222;
}
#nav_wrapper {
    width: 960px;
    margin: 0 auto;
    text-align: left;
}
#nav ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    position: relative;
    min-width: 200px;
}
#nav ul li {
    display: inline-block;
}
#nav ul li:hover {
    background-color: #333;
}
#nav ul li a, visited {
    color: #CCC;
    display: block;
    padding: 15px;
    text-decoration: none;
}
#nav ul li:hover ul {
    display: block;
}
#nav ul ul {
    display: none;
    position: absolute;
    background-color: #333;
    border: 5px solid #222;
    border-top: 0;
    margin-left: -5px;
}
#nav ul ul li {
    display: block;
}
#nav ul ul li a:hover {
    color: #699;
}

1 个答案:

答案 0 :(得分:0)

我认为问题出在你的z-index属性上。 您需要设置#nav和#slider元素位置和z-index属性。

#nav {
 position: relative;
 z-index: 2;
}
#slider{
 position: relative;
 z-index: 1;
}

这意味着当您在#slider上设置大于z-index的z-index属性时,#nav菜单将成为前滑块。如果你没有设置相对或绝对的元素位置属性,请注意z-index不起作用。

您可以查看此链接,例如 - http://css-tricks.com/almanac/properties/z/z-index/