2013-03-11 74 views
1

我能够做出一个侧面菜单,并显示了当我在菜单项上滚动时的子菜单。 现在我面临两个问题 1.当悬停到菜单项时,它显示子菜单,但当我悬停在子菜单上时,菜单项的悬停状态消失。我需要它处于悬停状态。 2.显示子菜单块时,它显示为透明,我可以看到它后面的内容。但是,我怎么能使它完全不透明?当我进入html页面的子菜单时,无法在菜单上保持悬停状态

我的代码如下...

<!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" dir="ltr" lang="en-US"> 

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<title>CSS Drop Down Menus</title> 

<style type="text/css"> 
<!-- * { 
    margin: 0; 
    padding: 0; 
} 

body { 
    font-family: "Trebuchet MS", Helvetica, Sans-Serif; 
    font-size: 14px; 
} --> 

a { 
    text-decoration: none; 
    color: #FFFFFF; 
} 

a:hover { 
    color: black; 

} 

#menu { 
    position: relative; 
    width:20%; 
    height:400px; 
    border:1px solid #000; 
} 

#menu a { 
    display: block; 
    width: 140px; 
    background-image:url(menuitemhover.png); 
} 

#menu ul { 
    list-style-type: none; 
    padding-top: 5px; 
} 

#menu li { 
    float: top; 
    position: relative; 
    padding: 3px 0; 
    text-align: center; 
} 

#menu ul.sub-menu { 
    display: none; 
    position: absolute; 
    top: -10px; 
    left: 170px; 
    padding: 10px; 
    z-index: 90; 
} 

#menu ul.sub-menu li { 
    text-align: top; 
} 

#menu li:hover > ul.sub-menu { 
    display: block; 
    border: 1px solid #ececec; 
    background-image:url(menuitemhover.png); 
} 
</style> 

</head> 
<body> 

<div id="menu"> 
    <ul> 
     <li><a href="#">Home</a> 

     <ul class="sub-menu" style="border:1px solid #d14836"}> 
      <li><a href="#">Pages</a></li> 
      <li><a href="#">Archives</a></li> 
      <li><a href="#">New Posts</a></li> 
      <li><a href="#">Recent Comments</a></li> 
     </ul> 

     </li> 

     <li><a href="#">About</a> 

     <ul class="sub-menu" style="border:1px solid #d14836"> 
      <li><a href="#">Get to know us</a></li> 
      <li><a href="#">Find out what we do</a></li> 
     </ul> 

     </li> 

     <li><a href="#">Contact</a> 

     <ul class="sub-menu" style="border:1px solid #d14836"> 
      <li><a href="#">E-mail Us</a></li> 
      <li><a href="#">Use Our Contact Form</a></li> 
     </ul> 

     </li> 
    </ul> 
</div> 

</body> 
</html> 
+0

如果可能的话,提供一个链接到你的网站,以及它更容易调试 – 2013-03-11 06:49:12

回答

1

如果我理解正确的,你需要一个背景颜色应用到#menu li:hover > ul.sub-menu#menu a。对于我来说,尝试使用非常明显的颜色进行测试比较容易,如绿色或红色。测试完成后,只需更换任何你想要的颜色