.menu ul ul {visibility:hidden;position:absolute;height:0;top:2em;left:-1px;width:14em;}隐藏所有层级菜单.menu ul li:hover ul, .menu ul a:hover ul {visibility:visible; height:auto; padding-bottom:3em;}鼠标悬停于第1级菜单时,显示所有级数大于1的菜单.menu ul :hover ul ul{visibility:hidden;}鼠标悬停于第1级菜单时,隐藏所有级数大于2的菜单.menu ul :hover ul :hover ul{visibility:visible;}鼠标悬停于第2级菜单时,显示所有级数大于2的菜单,这里的例子只处理到了3级菜单,实际情况可以再增加。<?xml version="1.0" encoding="iso-8859-1"?>
<!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="zh-cn" lang="zh-cn">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style>
.menu{font:11px tahoma;height:2em;border:1px solid #9b9a9a;text-align:left;}
.menu ul {padding:0px;margin:0px;list-style-type:none;background:none;}
.menu ul li {float:left;}
.menu a, .menu a:visited {
display:block;float:left;height:100%;text-decoration:none;background:none;padding:0px;color:#666;padding:0.4em 5px 0.5em;
}
.menu ul ul a, .menu ul ul a:visited {
color:#666666;width:12em;padding:0.4em 0.5em 0.4em 1.4em;
border-style:solid;border-color:#9b9a9a;border-width: 0 1px;
background-color:#ebebeb;
}
.menu ul table ul a, .menu ul table ul a:visited {width:14em;}
/* style the table so that it takes no part in the layout - required for IE to work */
.menu table {position:absolute; left:0; top:1px; font-size:1em; z-index:-1;}
.menu ul ul table {left:-2px;}
.menu ul ul table ul.left {margin-left:2px;}
.menu li:hover {position:relative;}
* html .menu a:hover {position:relative;}
.menu ul ul ul a, .menu ul ul ul a:visited {background-color:#DEDEDE;}
.menu ul :hover a.sub1 {background:#ebebeb url(./rtriangle.gif) no-repeat 100% 50%;}
.menu a:hover {color:#000;background:#EBEBEB;}
.menu :hover > a {color:#000;background:#EBEBEB;}
.menu ul ul a:hover{background-color:#FAFAFA;color:#C00;}
.menu ul ul :hover > a {background-color:#FAFAFA;color:#C00;}
.menu ul :hover a.sub1:hover {background-color:#FAFAFA;}
.menu ul ul ul a:hover {background-color:#F7F7F7;}
.menu ul ul ul :hover > a {background-color:#F7F7F7;}
.menu ul ul {visibility:hidden;position:absolute;height:0;top:2em;left:-1px;width:14em;}
.menu ul ul ul{left:14em;top:0;}
.menu ul li:hover ul, .menu ul a:hover ul {visibility:visible; height:auto; padding-bottom:3em;}
.menu ul :hover ul ul{visibility:hidden;}
.menu ul :hover ul :hover ul{visibility:visible;}
</style>
</head>
<body>
<div class="menu">
<ul>
<li><a href="#">Menu
<!--[if IE 7]><!--></a><!--<![endif]--><!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="#">Item1</a></li>
<li><a href="#">Item2</a></li>
<li><a href="#">Item3</a></li>
<li><a href="#">Item4</a></li>
<li><a href="#">Item5 with a long name as 2 lines</a></li>
<li><a href="#">Item6</a></li>
<li><a class="sub1" href="#">SubMenu1
<!--[if IE 7]><!--></a><!--<![endif]--><!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="#">Item7</a></li>
<li><a href="#">Item8</a></li>
<li><a href="#">Item9</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li><a href="#">Item10</a></li>
<li><a class="sub1" href="#">SubMenu2 with a long name and a list of subs
<!--[if IE 7]><!--></a><!--<![endif]--><!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="#">Item11 with a very long name, quite long</a></li>
<li><a href="#">Item12</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li><a href="#">Menu2
<!--[if IE 7]><!--></a><!--<![endif]--><!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="#">Item13, Menu2</a></li>
<li><a href="#">Item14</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
</ul>
</div>
</body>
</html>