css怎样实现简单的二级下拉菜单

html-css027

css怎样实现简单的二级下拉菜单,第1张

一种超级简单的二级下拉菜单制作方法,代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />

<title>简单的二级下拉菜单</title>

<style type="text/css">

#FM >li >ul.fm{ display:none}

#FM >li:hover >ul.fm{ display:block}

</style>

</head>

<body>

</body>

</html>

<body>

<ul id="FM">

<li><a href="#">首页</a>

<ul class="fm">

<li><a href="#">这是二级菜单</a></li>

<li><a href="#">这是二级菜单</a></li>

</ul>

</li>

<li><a href="#">关于我们</a>

<ul class="fm">

<li><a href="#">这是二级菜单</a></li>

<li><a href="#">这是二级菜单</a></li>

</ul>

</li>

</li>

</ul>

</body>

</html>

所作出来的效果为:

这样子就很快的用css实现简单的二级下拉菜单啦!

代码粘贴的太复杂;

先给你分析一下原理:二级菜单没有在没有hover属性的情况下是隐藏的所以需要display:none,当鼠标hover的时候二级菜单才会列出来,这是纯css可以实现的;

知道上面的原理之后,下面比较容易实现具体看例子:

HTML代码:

<ul>

<li><a href="">一级菜单</a></li>

<li><a href="">一级菜单</a>

<ul class="drop-ul">

<li ><a href="">二级菜单</a></li>

</ul>

</li>

</ul>

CSS代码:

ul li ul.drop-ul{ display: noneposition:relative }/*正常情况下隐藏*/

ul li:hover ul.drop-ul li{display: block} /*当鼠标放上去二级菜单li 显示出来*/

/*这个时候你会发现二级菜单显示的位置可能不对可以使用position属性*/

ul li:hover ul.drop-ul li{position:absolute}

/*通过top right left 调整位置,根据实际情况调整背景颜色,字体颜色等,细节东西*/

此时可能会发现会二级菜单出现有那么一点点的生硬;没关系配合jquery实现缓慢展现效果

$(document).ready(function() {

if($(window).width() > 768) {

$('ul li').hover(

function() {

$('ul', this).stop().slideDown(200)

  },

function() {

     $('ul', this).stop().slideUp(200)

   }

)

}

})

注意不知道jquery的新手使用记住先加载Jquery.min.js文件,放在此段js前面;