初级-零基础-web前端开发 HTML+CSS+JAVASCRIPT 二级/三级导航菜单(参考案例)

🚀 个人主页 极客小俊
✍🏻 作者简介:web开发者、设计师、技术分享博主
🐋 希望大家多多支持一下, 我们一起进步!😄
🏅 如果文章对你有帮助的话,欢迎评论 💬点赞👍🏻 收藏 📂加关注

不废话了 直接上代码:

HTML部分

<div id="menu">
    <ul id="menu_sub">
        <li class="first-list">
            <a herf=''>菜单1</a>
            <ul class="sub1">
                <li class="second-list">
                    <a herf=''>二级菜单1</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单2</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单3</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单4</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
            </ul>
        </li>
        <li class="first-list">
            <a herf=''>菜单2</a>
            <ul class="sub1">
                <li class="second-list"><a herf=''>二级菜单1</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单2</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单3</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单4</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
            </ul>
        </li>
        <li class="first-list">
            <a herf=''>菜单3</a>
            <ul class="sub1">
                <li class="second-list"><a herf=''>二级菜单1</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单2</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单3</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单4</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
            </ul>
        </li>
        <li class="first-list">
            <a herf=''>菜单4</a>
            <ul class="sub1">
                <li class="second-list"><a herf=''>二级菜单1</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单2</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单3</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
                <li class="second-list"><a herf=''>二级菜单4</a>
                    <ul class="sub2">
                        <li><a herf=''>三级菜单1</a></li>
                        <li><a herf=''>三级菜单2</a></li>
                        <li><a herf=''>三级菜单3</a></li>
                        <li><a herf=''>三级菜单4</a></li>
                    </ul>
                </li>
            </ul>
        </li>
    </ul>
</div>

CSS部分

 /*清除默认样式*/
        ul,li {
            padding: 0px;
            margin: 0px;
            list-style: none;
        }
        /*div样式*/
        #menu {
            border: 2px solid #ccc;
            border-right: none;
            float: left;
            margin: 100px 0 0 300px;
        }

        /*浮动li*/
        #menu ul li {
            position: relative;
        }

        /*设置a标签的样式*/
        #menu ul li a {
            width: 120px;
            height: 40px;
            text-align: center;
            line-height: 40px;
            display: block;
            border-right: 2px solid #ccc;
            background: #eee;
            color: #666;
        }

        /*当鼠标移动到 一级菜单的a标签上时*/
        #menu ul li a:hover {
            cursor: pointer;
            color: #f5576c;
            border-right: 2px solid transparent;
        }


        /*二级菜单*/
        #menu ul li .sub1{
            position: absolute;
            left: 120px;
            top: -2px;
            border-top: 2px solid #ccc;
            background: #eee;
            display: none;
            /*z-index: 3;*/
        }

        /*设置二级菜单下的a标签样式*/
        #menu ul li .sub1 li a{
            border-top: 1px dotted #ccc;
            width: 120px;
            text-align: center;
            height:39px;
            color: #666;
        }

        #menu ul li .sub1 li a:hover{
            color: #8fd3f4;
            border-right: 2px solid #ccc;
        }

        /*设置二级菜单下的第一个li下的a标签样式*/
        #menu ul li .sub1 li:first-child a{

        }
        /*设置二级菜单下的最后一个li下的a标签样式*/
        #menu ul li .sub1 li:last-child{
            border-bottom: 2px solid #ccc;
        }

        #menu ul li .sub1 li{
            position: relative;
        }

        /*显示二级菜单 暂时注销*/
      /*  #menu ul li:hover .sub1{
            display: block;
        }*/

        /*三级菜单*/
        #menu ul li .sub1 li .sub2{
            /*z-index:5;*/
            position:absolute;
            top: -2px;
            left: 120px;
            display: none;
            border-top: 2px solid #ccc;
        }
        /*显示三级菜单  暂时注销*/
        /*#menu ul li .sub1 li:hover .sub2{
            display: block;
        }*/
        /*把右边框设置回来*/
        #menu ul li .sub1 li .sub2 li a{
            border-right: 2px solid #ccc;
            height: 39px;
            width: 120px;
        }
        /*文字颜色*/
        #menu ul li .sub1 li .sub2 li a:hover{
            color: #fee140;
        }

javascript代码部分

window.onload=function(){
       
            var oUl=document.getElementById('menu_sub');
            var aLi=oUl.getElementsByClassName('first-list');

            for(var i=0;i<aLi.length;i++){
               
                aLi[i].index=i;
                aLi[i].onmouseover=function () {
                    var sub2=aLi[this.index].getElementsByTagName('ul')[0];
                    sub2.style.display='block';
                 
                    var aLisub2=sub2.getElementsByClassName('second-list');
                    for(var j=0;j<aLisub2.length;j++){
                        aLisub2[j].index=j;
                        aLisub2[j].onmouseover=function () {
                            var sub3=aLisub2[this.index].getElementsByTagName('ul')[0];
                            sub3.style.display='block';
                        }
                    }
                }
                
                aLi[i].onmouseout=function () {
                    var sub2=aLi[this.index].getElementsByTagName('ul')[0];
                    sub2.style.display='none';
                    
                    var aLisub2=sub2.getElementsByClassName('second-list');
                    for(var j=0;j<aLisub2.length;j++){
                        aLisub2[j].index=j;
                        aLisub2[j].onmouseout=function () {
                            var sub3=aLisub2[this.index].getElementsByTagName('ul')[0];
                            sub3.style.display='none';
                        }
                    }
                }
            }
        }

最后效果图 如下

在这里插入图片描述

"👍点赞" "✍️评论" "收藏❤️"

大家的支持就是我坚持下去的动力!

如果以上内容有任何错误或者不准确的地方,🤗🤗🤗欢迎在下面 👇👇👇 留个言指出、或者你有更好的想法,
欢迎一起交流学习❤️❤️💛💛💚💚

更多 好玩 好用 好看的干货教程可以 点击下方关注❤️ 微信公众号❤️
说不定有意料之外的收获哦..🤗嘿嘿嘿、嘻嘻嘻🤗!
🌽🍓🍎🍍🍉🍇

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值