纯css实现下拉菜单(超详细)

纯css实现下拉菜单(超详细)

ps:博主第一次发文章,不足之处还请指出
话不多说,直接进入正题吧

  1. ulli标签写一个关联结构(ulli的父子关系浑然天成,一般的关联结构都用它们)
<ul class="nav">
    <a href="#">服装</a>
    <ul class="plat">
        <li><a href="#">衬衫</a></li>
        <li><a href="#">棉袄</a></li>
        <li><a href="#">裤衩</a></li>
    </ul>
</ul>

2.对界面进行初始化(万金油式开头)

      *{
            padding: 0;
            margin: 0;
        }

3.给ula标签添加样式(这里大家可以自由发挥)

 ul,a{
            font-size: 20px;
            list-style: none;
            text-decoration: none;
            background-color: #3C3C3C;
            color: #FFFFFF;
            width: 100px;
            text-align: center;
            border: 0px solid black;
            border-radius: 5px;  /*圆角*/
            margin-top: 1px;
        }
        a{
            display: block;
        }

4… 将.plat部分的内容隐藏起来

.plat{
            display: none;
        }

5.(重头戏来了) 对第一个a标签用:hover选择器;实现功能:当鼠标划过a标签时,隐藏部分内容可见

.nav:hover .plat{
            display: block;
            clear: both;
        }

6.至此功能已经实现,大家可以自己添加样式来优化用户体验
例如:

  • 菜单栏横向排列:
.nav{
             float: left;
             margin-left: 1px;
         }
  • 鼠标滑过栏目,提醒其位置
`.plat li:hover>a{
            background-color: dimgrey;
        }`

成品展示
在这里插入图片描述
总代码如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        ul,a{
            font-size: 20px;
            list-style: none;
            text-decoration: none;
            background-color: #3C3C3C;
            color: #FFFFFF;
            width: 100px;
            text-align: center;
            border: 0px solid black;
            border-radius: 5px;
            margin-top: 1px;
        }
        a{
            display: block;
        }

        .plat{
            display: none;
        }
        .nav{
             float: left;
             margin-left: 1px;
         }
        .nav:hover .plat{
            display: block;
            clear: both;
        }
        .plat li:hover>a{
            background-color: dimgrey;
        }
    </style>
</head>
<body>
<ul class="nav">
    <a href="#">服装</a>
    <ul class="plat">
        <li><a href="#">衬衫</a></li>
        <li><a href="#">棉袄</a></li>
        <li><a href="#">裤衩</a></li>
    </ul>
</ul>
<ul class="nav">
    <a href="#">服装</a>
    <ul class="plat">
        <li><a href="#">衬衫</a></li>
        <li><a href="#">棉袄</a></li>
        <li><a href="#">裤衩</a></li>
    </ul>
</ul>
<ul class="nav">
    <a href="#">服装</a>
    <ul class="plat">
        <li><a href="#">衬衫</a></li>
        <li><a href="#">棉袄</a></li>
        <li><a href="#">裤衩</a></li>
    </ul>
</ul>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/qq_28919991/article/details/82860218