最简单的二级下拉导航效果-支持IE6、IE7、FF

多级菜单构成模式:<li></li>之间插入一个<ul></ul>

原理:通过对元素的显示与隐藏的控制来实现。

说明:

1、对于 li:hover ul,li.over ul { display: block;} 这句来说,已经能实现我们想要的hover效果了,问题是IE6不支持,为了兼容,还得加上一段JS。你可以自己试着把JS去掉,在IE7和FF下是正常的。

2、代码简洁得不能再简洁,用JS+DIV+CSS构成,CSS几乎没有添加什么样式,请按需自行解决。

3、此例只作演示、学习原理用,并不适合用来建站,因为一旦 hover 大栏目,整个 #nav 的DIV都会被撑高,会把下面的内容给撑下去,而这不是我们希望见到的结果。(此问题的解决方法,且听下回分解^_^)

================华=丽=的=分=割=线==================

<!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/html; charset=gb2312" />
<title>最简单的二级下拉导航效果-JS+DIV+CSS</title>
<style type="text/css">
<!--
ul {
 padding: 0;
 margin: 0;
 list-style:none;
}
li {
 float:left;
 width:100px;
}
li ul {
 display: none;
 top: 20px;
}
li:hover ul,li.over ul {
 display: block;
}
-->
</style>
<script language="javascript">
startList = function()
{
 navli = document.getElementById("nav").document.getElementsByTagName("li");
 if(navli)
 {
  for(i=0 ; i<navli.length ; i++)
  {
   navli[i].onmouseover = function()
   {
    this.className+="over";
   }
   navli[i].onmouseout = function()
   {
    this.className = this.className.replace("over","");
   }
  }
 }
}
window.onload = startList;
</script>
</head>
<body>
 <ul id="nav">
  <li><a href="">大栏目一</a>
   <ul>
    <li><a href="">小栏目一-1</a></li>
    <li><a href="">小栏目一-2</a></li>
    <li><a href="">小栏目一-3</a></li>
    <li><a href="">小栏目一-4</a></li>
   </ul>
  </li>
  <li><a href="">大栏目二</a>
   <ul>
    <li><a href="">小栏目二-1</a></li>
    <li><a href="">小栏目二-2</a></li>
    <li><a href="">小栏目二-3</a></li>
   </ul>
  </li>
  <li><a href="">大栏目三</a>
   <ul>
    <li><a href="">小栏目三-1</a></li>
    <li><a href="">小栏目三-2</a></li>
    <li><a href="">小栏目三-3</a></li>
    <li><a href="">小栏目三-4</a></li>
   </ul>
  </li>
</ul>

<div style="width: 900px;">
其他文字。其他文字。其他文字。其他文字。其他文字。
</div>
</body></html>

Trackbacks: 点击获得Trackback地址,Encode: UTF-8  点击获得Trackback地址,Encode: GB2312 or GBK  点击获得Trackback地址,Encode: BIG5
分类:CSS & JS
浏览概况:评论:1 | 阅读:8037
文章评论(1)
[1楼] [引用] [TOP]
zx0070 发表于 2010, December 15, 1:10 PM
非常感谢!我是个初学者,这些很有用!
发表评论
用户名:
密码(游客无需):
网址/E-mail:
      记住我的信息