1

我正在尝试为我的网站制作导航菜单,并且一直在使用http://www.onextrapixel.com/2011/06/03/how-to-create-a-horizo ​​ntal-dropdown-menu-with-html-css -and-jquery/ 作为指南。它运行良好,但是一旦我尝试将( id="coolMenu" )添加到导航标签,它就会停止工作。

我将它从 ul 标签中取出并将其添加到 nav 标签中,但它不再起作用。它根本不显示任何东西。做错了什么?

谢谢。

html代码如下:

<nav id="coolMenu">
<ul>
    <li><a href="#">Lorem</a></li>
    <li><a href="#">Mauricii</a></li>
    <li> 
        <a href="#">Periher</a>
            <ul class="noJS">
                <li><a href="#">Hellenico</a></li>
                <li><a href="#">Genere</a></li>
                <li><a href="#">Indulgentia</a></li>
            </ul>
    </li>
    <li><a href="#">Tyrio</a></li>
    <li><a href="#">Quicumque</a></li>
</ul>
</nav>

下面的CSS:

/* Structure
------------------------------------------*/
#coolMenu,
#coolMenu ul {
    list-style: none;
}
#coolMenu {
    float: left;
}
#coolMenu > li {
    float: left;
}
#coolMenu li a {
    display: block;
    height: 2em;
    line-height: 2em;
    padding: 0 1.5em;
    text-decoration: none;
}
#coolMenu ul {
    position: absolute;
    display: none;
    z-index: 999;
}
#coolMenu ul li a {
    width: 80px;
}
#coolMenu li:hover ul.noJS {
    display: block; 
}


/* Main menu
------------------------------------------*/
#coolMenu {
    font-family: Arial;
    font-size: 12px;
    background: #2f8be8;
}
#coolMenu > li > a {
    color: #fff;
    font-weight: bold;
}
#coolMenu > li:hover > a {
    background: #f09d28;
    color: #000;
}


/* Submenu
------------------------------------------*/
#coolMenu ul {
    background: #f09d28;
}
#coolMenu ul li a {
    color: #000;
}
#coolMenu ul li:hover a {
    background: #ffc97c;
}
4

2 回答 2

1

你的问题在这里:

<nav id="coolMenu">
<ul>

ID标签应该附加到无序列表上,它应该是

<nav>
<ul id="coolMenu">

通过编辑查看您的代码:http: //jsfiddle.net/UMTGR/1/

于 2012-11-17T10:56:54.803 回答
1

问题在这里:

#coolMenu ul {
    position: absolute;
    display: none;
    z-index: 999;
}

由于您将 id 放在nav元素上,因此 mainul设置为display: none,而不是 submenu ul。如果您想让 id on nav,则必须更改所有 css 选择器以反映这一点。

或者,如果你想定位nav元素,为什么不给它一个新的 id 并保持其余部分不变呢?

于 2012-11-17T13:51:58.917 回答