小练习:简单三级菜单的制作(ul li)

这篇博客介绍了一个简单的三级菜单制作方法。通过利用HTML的列表嵌套和CSS的浮动、隐藏及定位属性,实现了鼠标悬停时依次显示一级、二级、三级菜单的效果。在处理三级菜单的定位时,提到了两种方案:一是相对于二级菜单的li定位,二是相对于整个二级菜单定位。
摘要由CSDN通过智能技术生成

思路:
列表嵌套列表,给一级菜单取名box,二级box2,三级box3, 一级菜单列表项li左浮动,默认初始状态二级和三级菜单都隐藏,鼠标滑过一级菜单列表项li,显示二级标签,划过二级菜单列表项li,显示三级菜单,三级菜单有定位问题,可以相对于二级菜单的li定位(使用“子元素绝对定位,父元素相对定位”),也可以相对于整个二级菜单.box2进行定位。
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>二级菜单</title>
    <style>
        *{
    
            margin: 0px;
            padding: 0px;
        }
        ul,li{
    
            list-style: none;
        }
        a{
    
            text-decoration: none;
        }
/* ``````````````````````````````````````````*/
       

        .box{
    
            width: 408px;
            height: 400px;
            margin: 100px auto;
        }

        /* 只选中“儿子” 第二代选不到 */
        .box>li{
    
            float: left;
        }

        .box a{
    
            display: block;
            width: 100px;
            height: 40px;
            border: 1px solid #4f4f4f;
            background: #05555f;
            font-size: 14px;
            color: #ffffff;
            line-height: 40px;
            text-align: center;
        }

        .box a:hover{
    
            color: #b6df21;
        }

        .box2{
    
            /* 初始把二级标题隐藏 */
            display: none;
            /* 以整个二级标题作为参考,做为父元素来给三级标题定位*/
            /* position: relative; */
        }

        .box2>li{
    
            /* 以二级标题列表项为参考,做为父元素给三级标题定位 */
            position: relative;
        }

        .box2>li>a{
    
            background: #5f3434;
        }
        
        /* 鼠标滑过一级标题li ,二级标题显示 */
        .box>li:hover .box2{
    
            display: block;
        }

        .box3{
    
            /* 初始隐藏 */
            display: none;
            position: absolute;
            left: 102px;
            top: 0px;
        }

        /* 鼠标滑过二级标题li ,三级标题显示 */
        .box2>li:hover .box3{
    
            display: block;
        }

        .box3 a{
    
            background: #bd971a;
        }
        
    </style>
</head>
<body>
    <ul class="box">
        <li>
            <a href="#">男偶像</a>
            <ul class="box2">
                <li>
                    <a href="#">李易峰</a>
                    <ul class="box3">
                        <li><a href="#">20岁</a></li>
                        <li><a href="#"></a></li>
                        <li><a href="#"
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值