html css 下拉菜单

html css dropdown menu

这是我第一次 post 访问 Stack Overflow,我不熟悉 posting 的论坛规定。所以请让我知道我做错了什么。我在论坛上研究过这个问题,但没有遇到任何明确的答案。

我正在尝试从 "News" 元素创建一个下拉菜单,但是当 运行 代码时我从未得到任何可见的结果。我试图将 .dropdown-contentdisplay 值更改为 block 以查看它是否会使列表可见,但没有任何显示。我错过了什么?

body{
 background-image: url("images/seamless-panda-bear-pattern.jpg");
 font-size: 100%;
 width: 80%;
 margin: auto;
 font-family: Palatino,"Palatino", Arial;

}

#top{
 background-color: black;
 color: white;
 padding-left: 10px;
 border: 2px solid white;
 font-family: Copperplate,"Copperplate Gothic Light",fantasy;
 opacity: 0.85;
 padding-left: 25px;
}

#menu{
 list-style-type: none;
 margin: 0;
 padding: 0;
 overflow: hidden;
 background-color: #333;
 position: fixed;
 width: 80%;
}
li{
 float: left;
}

#login{
 float: right;
 padding-right: 20px;
}

li a{
 display: block;
 color: white;
 text-decoration: none;
 text-align: center;
 padding: 14px 16px;

}
li a:hover{
 background-color: white;
 color: black;
}

li.dropdown{
 display: inline-block;
}

.dropdown-content{
 display: none;
 position: absolute;
 background-color: #f9f9f9;
 min-width: 160px;
 box-shadow: 0px 8px 16px 0px rgba(0,0,0,0,2);
 padding: 12px 16px;
 z-index: 1;
}

.dropdown-content a{
 display: block;
 text-decoration: none;
 padding: 12px 16px;
 color: black;
}

.dropdown:hover .dropdown-content{
 display: block;
}


#bio{

}

#bottom{

}
<div id="nav">
<ul style="list-style-type: none" id="menu">
 <li><a href="home.html">Home</a></li>
 <li class="dropdown"><a class="dropbtn" href="#">News</a>
  <div class="dropdown-content">
   <a href="#">Games</a>
   <a href="#">Web Design</a>
   <a href="#">Travel</a>
  </div>
 </li>
 <!-- create a link to a part of the same page for contact info -->
 <li><a href="#bottom">Contact info</a></li>
 <li id="login"><a href="login.html">Log In</a></li>
</ul>
</div>

解决你的定位问题。您可以将 position: fixed; 添加到 #nav 并将 #menu 上的宽度从 width: 80%; 更改为 width: 100%;

这里是 JS Fiddle

希望对您有所帮助!