现在的位置: 首页 > 综合 > 正文

狂人日记学习 之十三 下拉及多及弹出式菜单

2012年10月29日 ⁄ 综合 ⁄ 共 1647字 ⁄ 字号 评论关闭

这种模式是目前最受欢迎,也是普遍采用的模式。主要解决的问题是响应鼠标的over 和 out事件,来控制div

参看代码:

<style type="text/css">
ul {
 margin: 0;
 padding: 0;
 list-style: none;
 width: 130px;
 border-bottom: 1px solid #ccc;
 font-size:12px;
 }
 
ul li {
 position: relative;
 }
 
li ul {
 position: absolute;
 left: 129px;
 top: 0;
 display: none;
 }

ul li a {
 display: block;
 text-decoration: none;
 color: #777;
 background: #fff;
 padding: 5px;
 border: 1px solid #ccc;
 border-bottom: 0;
 }
 
/* 解决UL在IE中显示不正确问题 */
* html ul li { float: left; height: 1%; }
* html ul li a { height: 1%; }
/* End */

li:hover ul, li.over ul { display: block; }
</style>

<script type="text/javascript"><!--//--><![CDATA[//><!--
startList = function() {
 if (document.all&&document.getElementById) {
  navRoot = document.getElementById("nav");
  for (i=0; i<navRoot.childNodes.length; i++) {
   node = navRoot.childNodes[i];
   if (node.nodeName=="LI") {
    node.onmouseover=function() {
     this.className+=" over";
    }
    node.onmouseout=function() {
     this.className=this.className.replace(" over", "");
    }
   }
  }
 }
}
window.onload=startList;

//--><!]]></script>
</head>

<body>
<ul id="nav">
  <li><a href="#">CSS布局</a>
    <ul>
      <li><a href="#">一栏式布局</a> </li>  
      <li><a href="#">二栏式布局</a></li>
      <li><a href="#">三栏式布局</a></li>
      <li><a href="#">组合式布局</a></li>
 </ul>
 </li>

  <li><a href="#">CSS页面元素</a>
    <ul>
      <li><a href="#">导航</a></li>
      <li><a href="#">背景</a></li>
      <li><a href="#">列表</a></li>
      <li><a href="#">Form表单</a></li>
   <li><a href="#">字体样式</a></li>
   <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>
      <li><a href="#">全图</a></li>
      <li><a href="#">混合排版</a></li>
    </ul>
  </li>
</ul>
</body>
</html>

抱歉!评论已关闭.