制作三级菜单

本文介绍如何使用HTML和CSS构建一个具有多级下拉菜单的导航栏,包括隐藏和显示不同级别的菜单项,以及调整菜单样式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先用HTML打好结构

<div class="menu">

                   <ul>//一级菜单

                            <li><ahref="">One</a></li>

                            <li><ahref="">Tow</a></li>

                            <li><ahref="">Three</a></li>

                            <li><ahref="">Four</a>

                                     <ul>//二级菜单

                                               <li><ahref="">Four.one</a></li>

                                               <li><ahref="">Four.two</a></li>

                                               <li><ahref="">Four.three</a>

                                                        <ul>//三级菜单

                                                                 <li><ahref="">Four.three.one</a></li>

                                                                 <li><ahref="">Four.three.two</li>

                                                                 <li><ahref="">Four.three.three</a></li>

                                                                 <li><ahref="">Four.three.four</a></li>

                                                        </ul>

                                               </li>

                                               <li><ahref="">Four.four</a></li>

                                     </ul>

                            </li>

                   </ul>

         </div>


让菜单起作用的关键在于先把它藏起来:

/*隐藏二级菜单*/

li ul {display:none;}

然后,再在父元素悬停时把它显示出来:

/*显示二级菜单*/

li:hover > ul {display:block;}


用Css增添样式

//一级菜单水平摆放

.menu li{

                float:left;

                list-style-type:none;

                padding:10px;

           }

//二级菜单不显示

 .menu li ul{

                display:none;

           }


//点击一级菜单中的li元素时,二级菜单显示并隐藏三级菜单

.menu li:hover ul{

                display:block;

           }

.menu li:hover li ul{

                display:none;

           }


//点击二级菜单中的li元素时,显示三级菜单

.menu li li:hover ul{

                 display:block;

                position:absolute;

                left:120%;

                top:0%;

           }

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>三栏布局P80</title>
	<style>
	  .menu li{
	  	float: left;
	  	list-style-type: none;
	  	padding:10px;
	  }
	  .menu li a{
	  	text-decoration: none;
	  }
	  .menu li ul{
	  	display: none;
	  }
	  .menu li:hover ul{
	  	display: block;
	  }
	  .menu li li{
	  	float: none;
	  	position: relative;
	  	left: -50%;
	  	top: 0%;
	  }
	   .menu li:hover li ul{
	  	display: none;
	  }
	 .menu li li:hover ul{
	 	display: block;
	  	position: absolute;
	  	left: 120%;
	  	top: 0%;
	  }
	</style>
</head>
<body>
	<div class="menu">
		<ul>
			<li><a href="">One</a></li>
			<li><a href="">Tow</a></li>
			<li><a href="">Three</a></li>
			<li><a href="">Four</a>
				<ul>
					<li><a href="">Four.one</a></li>
					<li><a href="">Four.two</a></li>
					<li><a href="">Four.three</a>
						<ul>
							<li><a href="">Four.three.one</a></li>
							<li><a href="">Four.three.two</li>
							<li><a href="">Four.three.three</a></li>
							<li><a href="">Four.three.four</a></li>
						</ul>
					</li>	
					<li><a href="">Four.four</a></li>
				</ul>
			</li>
		</ul>
	</div>
</body>
</html>




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值