经典css菜单,无限级朝右弹,代码短之极致了。
本来在经典论坛下的朝右弹的二级菜单,代码极短。
我改了一天,改成了无限级的。
原来的二级菜单,三个文件,caidan.htm,style2.css,drop_down.js
caidan.htm
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<!-- saved from url=(0058)http://www.alistapart.com/d/horizdropdowns/horizontal2.htm -->
<HTML xmlns="http://www.w3.org/1999/xhtml"><HEAD><TITLE>Horizontal Drop Down Menus</TITLE>
<META http-equiv=Content-Type content="text/html; charset=utf-8">
<SCRIPT src="drop_down.js" type=text/javascript></SCRIPT>
<STYLE type=text/css>@import url( style2.css );
</STYLE>
<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY>
<UL id=nav>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Home</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">About</A>
<UL>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">History</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Team</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Offices</A>
</LI></UL>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Services</A>
<UL>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Web
Design</A>
<UL>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Web
Design->sub</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Web
Design->sub2</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Web
Design->sub3</A>
</UL>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Internet
Marketing</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Hosting</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Domain
Names</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Broadband</A>
</LI></UL>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Contact
Us</A>
<UL>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">United
Kingdom</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">France</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">USA</A>
<LI><A
href="http://www.alistapart.com/d/horizdropdowns/horizontal2.htm#">Australia</A>
</LI></UL></LI></UL></BODY></HTML>
style2.css
body {
font: normal 11px verdana;
}
ul {
margin: 0;
padding: 0;
list-style: none;
width: 150px; /* Width of Menu Items */
border-bottom: 1px solid #ccc;
}
ul li {
position: relative;
}
li ul {
position: absolute;
left: 149px; /* Set 1px less than menu width */
top: 0;
display: none;
}
/* Styles for Menu Items */
ul li a {
display: block;
text-decoration: none;
color: #777;
background: #fff; /* IE6 Bug */
padding: 5px;
border: 1px solid #ccc;
border-bottom: 0;
}
/* Fix IE. Hide from IE Mac \*/
* html ul li { float: left; height: 1%; }
* html ul li a { height: 1%; }
/* End */
ul li a:hover { color: #E2144A; background: #f9f9f9; } /* Hover Styles */
li ul li a { padding: 2px 5px; } /* Sub Menu Styles */
li:hover ul, li.over ul { display: block; } /* The magic */
drop_down.js
// JavaScript Document
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;