导航栏二级下拉菜单

1.

①html+CSS

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .menu,.menu li {
            margin: 0px;
            padding: 0px;
            list-style: none;
            position: relative;
        }
        .menu li {
            float: left;
            margin-left: 10px
        }
        .menu div {
            display: none;
            position: absolute;
            top: 20px;
            left: 0px;
        }
        .menu div p {
            width: 100%;
            height: 20px;
            display: inline-block;
            text-align: center;
            margin: 3px 0;
        }
        .menu li:hover div {
            display: block;
            background: #F5F5F5;
        }
        .showConcur{
            width: 20px;
            background: #F5F5F5;
        }
    </style>
</head>
<body>
<ul class="menu">
    <li>
        <a class="showConcur" href="#">我的互助</a>
        <div>
            <p>签到</p>
            <p>迟到</p>
            <p>早到</p>
            <p>早退</p>
        </div>
    </li>
</ul>
</body>
</html>

②仅用HTML和CSS

<style>
*{margin:0;padding: 0;list-style: none;text-decoration: none;}
#nav{width: 500px;height: 40px;background: #ccc;margin: 0 auto;}
ul{background: #aaa}
ul li{float:left; display:block; height: 40px; line-height: 40px; padding: 0 20px; position: relative;}
ul li:hover{background: #cea;}
ul li ul li{float: none;}
/*关键一:将二级菜单设置为display:none;*/
ul li ul{position: absolute;top:40px;left: 0; display: none;}
ul li ul li:hover{background: red;}
/*关键二:在划过二级菜单从属的一级菜单时,设置为display:block;*/
ul li:hover ul{display: block;}
</style>
<div id="nav">
<ul>
<li><a href="">首页</a></li>
<li><a href="">汽车</a>
<ul>
<li><a href="#">奥迪</a> </li>
<li><a href="#">道奇</a> </li>
</ul>
</li>
<li><a href="">手机</a>
<ul>
<li><a href="#">小米</a> </li>
<li><a href="#">华为</a> </li>
</ul>
</li>
<li><a href="">联系我们</a></li>
</ul>
</div>

 以上做到了,结构与表现的分离

也可以用于鼠标经过显示,例如用户设置框(块)显示

2.JQuery

<style>
*{margin:0;padding: 0;list-style: none;text-decoration: none;}
#nav{width: 500px;height: 40px;background: #ccc;margin: 0 auto;}
ul{background: #aaa}
ul li{float:left; display:block; height: 40px; line-height: 40px; padding: 0 20px; position: relative;}
ul li:hover{background: #cea;}
ul li ul li{float: none;}
ul li ul{position: absolute;top:40px;left: 0; display: none;}
ul li ul li:hover{background: red;}
</style>
<div id="nav">
<ul>
<li><a href="">首页</a></li>
<li class="navmenu"><a href="">汽车</a>
<ul>
<li><a href="#">奥迪</a> </li>
<li><a href="#">道奇</a> </li>
</ul>
</li>
<li class="navmenu"><a href="">手机</a>
<ul>
<li><a href="#">小米</a> </li>
<li><a href="#">华为</a> </li>
</ul>
</li>
<li><a href="">联系我们</a></li>
</ul>
</div> 
<!-- 关键一:引入jQuery库文件 -->
script type="text/javascript">
$(function(){
$(".navmenu").mouseover(function(){
$(this).children("ul").show();
})
})
// 关键二:正确使用jQuey的语法完成行为。
$(function(){
$(".navmenu").mouseout(function(){
$(this).children("ul").hide();
})
})
/script>

猜你喜欢

转载自570109268.iteye.com/blog/2392756