当前位置: 首页 > 面试题库 >

纯CSS多级下拉菜单

邴宏大
2023-03-14
问题内容

以前,我没有对多级纯CSS下拉菜单进行过很多工作,但是现在我正在寻找最干净的方法。当我搜索了这个网上我发现了很多那名4-5岁的解决方案,我不知道是否有更好的方法来实现这一目标,而不是做一些这样的。


问题答案:

.third-level-menu

{

    position: absolute;

    top: 0;

    right: -150px;

    width: 150px;

    list-style: none;

    padding: 0;

    margin: 0;

    display: none;

}



.third-level-menu > li

{

    height: 30px;

    background: #999999;

}

.third-level-menu > li:hover { background: #CCCCCC; }



.second-level-menu

{

    position: absolute;

    top: 30px;

    left: 0;

    width: 150px;

    list-style: none;

    padding: 0;

    margin: 0;

    display: none;

}



.second-level-menu > li

{

    position: relative;

    height: 30px;

    background: #999999;

}

.second-level-menu > li:hover { background: #CCCCCC; }



.top-level-menu

{

    list-style: none;

    padding: 0;

    margin: 0;

}



.top-level-menu > li

{

    position: relative;

    float: left;

    height: 30px;

    width: 150px;

    background: #999999;

}

.top-level-menu > li:hover { background: #CCCCCC; }



.top-level-menu li:hover > ul

{

    /* On hover, display the next level's menu */

    display: inline;

}





/* Menu Link Styles */



.top-level-menu a /* Apply to all links inside the multi-level menu */

{

    font: bold 14px Arial, Helvetica, sans-serif;

    color: #FFFFFF;

    text-decoration: none;

    padding: 0 0 0 10px;



    /* Make the link cover the entire list item-container */

    display: block;

    line-height: 30px;

}

.top-level-menu a:hover { color: #000000; }


<ul class="top-level-menu">

    <li><a href="#">About</a></li>

    <li><a href="#">Services</a></li>

    <li>

        <a href="#">Offices</a>

        <ul class="second-level-menu">

            <li><a href="#">Chicago</a></li>

            <li><a href="#">Los Angeles</a></li>

            <li>

                <a href="#">New York</a>

                <ul class="third-level-menu">

                    <li><a href="#">Information</a></li>

                    <li><a href="#">Book a Meeting</a></li>

                    <li><a href="#">Testimonials</a></li>

                    <li><a href="#">Jobs</a></li>

                </ul>

            </li>

            <li><a href="#">Seattle</a></li>

        </ul>

    </li>

    <li><a href="#">Contact</a></li>

</ul>

我还整理了一个现场演示,可在此处使用



 类似资料:
  • 本文向大家介绍纯css下拉菜单 无需js,包括了纯css下拉菜单 无需js的使用技巧和注意事项,需要的朋友参考一下 再来个今天某人说过的例子:纯css下拉菜单: 效果图 这个的实现很简单,主要是:hover和过渡属性transition的使用。 代码: 因为ul是个伸缩对象,所以要让它脱离文档流,不是在实用时会影响到布局,给它一个绝对定位即可。 以上就是本文的全部内容,希望对大家的学习有所帮助,也

  • 本文向大家介绍Bootstrap3多级下拉菜单,包括了Bootstrap3多级下拉菜单的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Bootstrap下拉菜单的具体代码,供大家参考,具体内容如下 效果图: - 需要引用bootstrap.min.css和bootstrap.min.css.js - 代码如下 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教

  • 问题内容: 通过使用twitter bootstrap 2的元素,可以有一个多级下拉菜单吗?原始版本没有此功能。 问题答案: 更新的答案 更新了支持v2.1.1 *引导程序版本样式表的答案。 **但是请小心,因为此解决方案已从v3中删除 只是想指出一点,因为最新的引导程序现在默认支持多级下拉菜单,因此不再需要此解决方案。如果您使用的是旧版本,则仍然可以使用它,但对于那些已更新到最新版本(在撰写本文

  • 问题内容: 我正在尝试制作一个简单的CSS下拉菜单,当您将鼠标悬停在链接上时,将显示子菜单。当您将鼠标悬停在li上时,我已经设法实现了这一点,但无法弄清楚如何使用链接来实现。 我之所以尝试使用链接而不是li来执行此操作,是因为我的菜单宽度为100%,并且li所占的面积比链接大,因此,如果将鼠标悬停在该区域上,则不显示该子菜单不想。 我的CSS如下: 问题答案: 如果可能的话,我会避免使用JS。这不

  • .dropbtn { background-color: #4CAF50; color: white; padding: 16px; font-size: 16px; border: none; cursor: pointer; } .dropdown { position: relative; display: inline-block; } .dropdown:hover .dropbtn {

  • 本文向大家介绍请使用css写一个多级的下拉菜单相关面试题,主要包含被问及请使用css写一个多级的下拉菜单时的应答技巧和注意事项,需要的朋友参考一下