【问题标题】:How to add second level to a submenu in a dropdown navigation css如何在下拉导航css中将第二级添加到子菜单
【发布时间】:2012-04-12 09:44:40
【问题描述】:

我已经创建了下面列出的导航菜单:

<div class="menu">
    <ul>
        <li>
            <a href="index.php" target="_self" >Home</a>
        </li>
        <li>
            <a href="preparation.php" target="_self" >Gallery</a>
            <ul>
                <li>
                    <a href="digital.php" target="_self">Storybooks</a>
                </li>
                <li>
                    <a href="preparation.php" target="_self">Preparation</a>
                </li>
                <li>
                    <a href="ceremony.php" target="_self">Ceremony</a>
                </li>
                <li>
                    <a href="private.php" target="_self">Personal Shooting</a>
                </li>
                <li>
                    <a href="firstdance.php" target="_self">First Dance</a>
                </li>
                <li>
                    <a href="details.php" target="_self">Details</a>
                </li>
            </ul>
        </li>
        <li>
            <a href="login.php" target="_self" >Customers</a>
        </li>
        <li>
            <a href="about.php" target="_self" >About</a>
        </li>
        <li>
            <a href="contact.php" target="_self" >Contact</a>
        </li>
    </ul>
</div>

目前这个菜单的 CSS 是:

.menu {
    margin: 0px;
    padding: 0px;
    font-family: "Times New Roman";
    font-size: 14px;
    font-weight: bold;
    color: #6D6D6D;
}
.menu ul {
    height: 26px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.menu li {
    float: left;
    padding: 0px;
}
.menu li a {
    color: #6D6D6D;
    display: block;
    font-weight: normal;
    line-height: 26px;
    margin: 0px;
    padding: 0px 25px;
    text-align: center;
    text-decoration: none;
}
.menu li a:hover, .menu ul li:hover a {

    background: #ca9875 url("menu_images/hover.gif") bottom center no-repeat;
    color: #6D6D6D;
    text-decoration: none;
}
.menu li ul {
    /*background:#333333;*/
    /*background: #B32267;*/
    background: white;
    display: none;
    height: auto;
    padding: 0px;
    margin: 0px;
    border: 0px;
    position: absolute;
    /*width: 225px;*/
    width: 135px;
    z-index: 200;
    /*top:1em;
     /*left:0;*/
}
.menu li:hover ul {
    display: block;
}
.menu li li {
    background: url('menu_images/sub_sep.gif') bottom left no-repeat;
    display: block;
    float: none;
    margin: 0px;
    padding: 0px;
    /*width: 225px;*/
    width: 135px;
}
.menu li:hover li a {
    background: none;
}
.menu li ul a {
    display: block;
    height: 26px;
    font-size: 13px;
    font-style: normal;
    margin: 0px;
    padding: 0px 10px 0px 15px;
    text-align: left;
}
.menu li ul a:hover, .menu li ul li:hover a {
    background: #ca9875 url('menu_images/hover_sub.gif') center left no-repeat;
    border: 0px;
    color: #ffffff;
    text-decoration: none;
}
.menu p {
    clear: left;
}

我想知道是否有办法将二级子菜单添加到“故事书”类别中?我的意思是当我将鼠标悬停在“故事书”上时,我想查看右侧的另一个子菜单。这可以用css吗? 感谢任何帮助,谢谢。

【问题讨论】:

  • 所以用 css 不可能在
  • Storybooks
  • 中添加另一个
      吗?
  • 你不能用 CSS 添加
      ,如果你在 HTML 中插入
        ,你可以设置它的样式。 ;) 有关详细信息,请参阅我的答案。
  • 是的,我的意思是在 html 中添加
      并相应地设置样式。谢谢保罗,你的回答就像一个魅力。感谢您的帮助。
  • 标签: css navigation drop-down-menu


    【解决方案1】:

    我在上面编辑了您的代码以使其正常工作,请参阅 http://jsfiddle.net/BVvc6/1/ 以获取新代码。

    注意:我在 Storybook 下方添加了两个菜单点,分别称为 Storybook 1 和 Storybook 2。CSS 被添加到现有代码的底部(上面没有任何更改)。

    编辑:您应该稍微清理一下您的 CSS 代码,例如使用 &gt; 之类的 CSS 选择器来匹配特定的 DOM 级别。

    【讨论】:

    • 你用同样的解决方案打败了我。
    • Paul,如果希望将 storybook1 和 storybook2 扩展到其他子菜单,我应该如何关注?
    • 其实一样。只需将另一个
        插入任何
      • 并调整您的 CSS。
    • 请参阅 jsfiddle.net/BVvc6/4 以获取带有 Storybook 1 额外子菜单的新版本。请注意,CSS 变得非常难看(又快又脏),应该简化。
    • 确实,我真的需要简化它。再次感谢,很棒的帮助。
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签