css下拉导航菜单简单实例代码

发布时间:2020-06-24编辑:脚本学堂
分享下css下拉导航菜单的制作方法,创建一个div来做为容器,然后把这个导航菜单放到这个内器中,用无序列表来创建这个导航菜单。

css下拉菜单的效果图,如下:
css下拉菜单
 
首先,为下拉菜单写一个HTML的代码。
创建一个div来做为容器,然后把这个导航菜单放到这个内器中,用无序列表来创建这个导航菜单。
在这个导航菜单中Portfolio项下有一个子菜单,用粗体表示出来,别忘了关闭</li>。

1,html代码部分
 

复制代码 代码示例:
<div id="nav">
<ul>
<li class="first"><a href="#">Home</a></li>
<li><a href="#">About Me</a></li>
<li><a href="#">Portfolio</a>
<ul>
<li><a href="#">Web</a></li>
<li><a href="#">Print</a></li>
<li><a href="#">Photos</a></li>
</ul>
</li>
<li><a href="#">Contact Me</a></li>
</ul>
</div>

2,css代码部分
首先,为#nav div设置一个样式,给它一个宽度,高度,字体大小.并把默认的无序列表样式给去掉.
 

复制代码 代码示例:
*{ margin:0px; padding: 0px; }
#nav {
font-family: arial, sans-serif;
position: relative;
width: 390px;
height:56px;
font-size:14px;
color:#999;
margin: 0 auto;
}
#nav ul {
list-style-type: none;
}

在这一步给<li>设置左浮动让整个导航水平.并且设置相对,记<li>成为一个祖元素,这样就可以利用到绝对定位了.
 

复制代码 代码示例:
#nav ul li {
float: left
position: relative;
}

在这一步给<a>标签设置一个样式被它看起来像一个按扭(div css教程-如何使用css创建一个类似按扭的导航)
 

复制代码 代码示例:
#nav ul li a {
text-align: center;
border-right:1px solid #e9e9e9;
padding:20px;
display:block;
text-decoration:none;
color:#999;
}

最重要的部分
这部分将展示给你看如何让下拉菜单的显示和隐藏.
光标没有移动到WEB项里下拉菜单不显示,当光标移动到WEB项上面时下拉菜单显示,我们用display的属性来实现这个效果.
 

复制代码 代码示例:
#nav ul li ul {
display: none
}
#nav ul li:hover ul {
display: block;
position: absolute;
}

为下拉菜单的悬停状态设置样式
 

复制代码 代码示例:
#nav ul li:hover ul li a {
display:block;
background:#12aeef;
color:#ffffff;
width: 110px;
text-align: center;
border-bottom: 1px solid #f2f2f2;
border-right: none;
}
#nav ul li:hover ul li a:hover {
background:#6dc7ec;
color:#fff;
}

完整的css样式代码:
 

复制代码 代码示例:
*{ margin:0px; padding: 0px; }
#nav {
font-family: arial, sans-serif;
position: relative;
width: 390px;
height:56px;
font-size:14px;
color:#999;
margin: 0 auto;
}
#nav ul {
list-style-type: none;
}
#nav ul li {
float: left;
position: relative;
}
#nav ul li a {
text-align: center;
border-right:1px solid #e9e9e9;
padding:20px;
display:block;
text-decoration:none;
color:#999;
}
#nav ul li ul {
display: none
}
#nav ul li:hover ul {
display: block;
position: absolute;
}
#nav ul li:hover ul li a {
display:block;
background:#12aeef;
color:#ffffff;
width: 110px;
text-align: center;
border-bottom: 1px solid #f2f2f2;
border-right: none;
}
#nav ul li:hover ul li a:hover {
background:#6dc7ec;
color:#fff;
}

演示代码:
 

复制代码 代码示例:
<!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" xml:lang="en" lang="en">
<head>
 <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
 <title>Plain Shane Design > CSS Drop Down Demo</title>
 <style type="text/css">
 *{margin:0; padding: 0;}
 body { background:#444;}
 #navcont { background: #fff; width: 100%;}
 #nav { font-family: helvetica; position:relative; width:377px; height:56px; font-size:14px; color:#999;
margin: 0 auto; }
 #nav ul { list-style-type:none; }
 #nav ul li { float:left; position: relative;}
 #nav ul li a { border-right:1px solid #e9e9e9; padding:20px; display:block; text-decoration:none; text-
align:center; color:#999;}
 #nav ul li a:hover {background: #12aeef url(http://files.jb200.com/demoimg/200912/shadow.png) repeat-x;;
color:#fff;}
 #nav ul li ul {display: none;}
 #nav ul li:hover ul {display: block; position: absolute; top:56px; min-width:190px; left:0;}
 #nav ul li:hover ul li a {display:block; background:#12aeef; color:#ffffff; width: 110px; text-align:
center; border-bottom: 1px solid #f2f2f2; border-right: none;}
 #nav ul li:hover ul li a:hover { background:#6dc7ec; color:#ffffff; }
 .borderleft {border-left: 1px solid #e9e9e9;}
 .top { border-top: 1px solid #f2f2f2;}
 /*  This piece of code is for a third level drop down menu and is not included in this tutorial  #nav ul
li:hover ul li ul {display:none;}
 #nav ul li:hover ul li:hover ul {display:block; position: absolute; top:-1px; left: 151px;}*/
 /* Ignore this last piece of code */
 #threestyles {
  width: 500px;
  height: 300px;
  margin: 0px auto;
  border: 2px solid #666;
  margin-top: 30px;
 }
 
 </style>
</head>
<body>
<div id="navcont">
<div id="nav">
<ul>
 <li class="borderleft"><a href="http://www.jb200.com" target="_blank">Home</a></li>
 <li><a href="http://www.jb200.com" target="_blank">About Me</a></li>
 <li><a href="http://www.jb200.com" target="_blank">Portfolio</a>
  <ul>
   <li class="top"><a href="http://www.jb200.com" target="_blank">Web</a></li>
   <li><a href="http://www.jb200.com" target="_blank">Print</a></li>
   <li><a href="http://www.jb200.com" target="_blank">The Rest</a></li>
  </ul>
 </li>
 <li><a href="http://www.jb200.com" target="_blank">Contact</a>
   <ul>
    <li class="top"><a href="http://www.jb200.com" target="_blank">Web</a></li>
    <li><a href="http://www.jb200.com" target="_blank">Print</a></li>
    <li><a href="http://www.jb200.com" target="_blank">The Rest</a></li>
   </ul>
 </li>
</ul>
</div>
</div>
<div id="threestyles"><a href="http://www.jb200.com" target="_blank"><img
src="http://files.jb200.com/demoimg/200912/threestyles.png" /></div>
</body>
</html>