!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"headmeta http-equiv="Content-Type" content="text/html; charset=gb2312" /title下拉
<!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>下拉纵向及多级弹出式菜单www.aa25.cn</title><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.οnmοuseοver=function() { this.className+=" over"; } node.οnmοuseοut=function() { this.className=this.className.replace(" over", ""); } } } }}window.οnlοad=startList;//--><!]]></script><style>ul { margin:0; padding:0; list-style:none; width:120px; border-bottom:1px solid #ccc; font-size:12px;}ul li { position:relative;}li ul { position:absolute; left:119px; top:0; display:none;}ul li a { width:108px; display:block; text-decoration:none; color:#666666; background:#fff; padding:5px; border:1px solid #ccc; border-bottom:0px;}ul li a:hover { background-color:#ddd;}/*解决ul在IE下显示不正确的问题aa25.cn*/* html ul li { float:left; height:1%;}* html ul li a { height:1%;}/* end */li:hover ul,li.over ul { display:block;}</style></head><body><ul id="nav"> <li><a href="">文章</a> <ul> <li><a href="">CSS教程</a></li> <li><a href="">DOM教程</a></li> <li><a href="">XML教程</a></li> <li><a href="">FLASH教程</a></li> </ul> </li> <li><a href="">参考</a> <ul> <li><a href="">XHTML</a></li> <li><a href="">XML</a></li> <li><a href="">CSS</a></li> </ul> </li> <li><a href="">BLOG</a> <ul> <li><a href="">全部</a></li> <li><a href="">网页技术</a></li> <li><a href="">UI技术</a></li> <li><a href="">FLASH技术</a></li> </ul> </li> <li><a href="">摇滚</a></li> <li><a href="">纯音乐</a></li> <li><a href="">古典金曲</a></li> <li><a href="">电影原声</a></li></ul></body></html>
为了实现导航中的子导航与主导航在实现鼠标交互的同时,保持其相对位置一致,我们使用了对ul li{}使用了position:relative;使其定位方式转为相对定位。而对li ul{}即子导航采用了position:absolute;相对于导航的绝对定位方式,了其鼠标交互后的位置一致。
里边加上了和段js代码,它是用来控制在IE浏览器下显示下拉菜单的,本来li:hover ul这句是可以的,但IE对css的支持还还完善,所以需要借助JS来控制。