我在我的页面上添加了第二个 CSS 下拉菜单,它出现在页面的左侧。第一个文本居中对齐,一切正常。当管理员登录进行管理操作时,我添加了第二个。 文本在此菜单中右对齐,下拉菜单显示在屏幕左侧。
这是一个 jsfiddle - https://jsfiddle.net/q0nsrdgo/
HTML
<div id="loginbar">
<ul>
<li>Welcome Xenarious | </li><li><a href="logout.php">Logout</a> |</li>
<li class="dropdown"><a href="#" class="dropbtn">Admin Controls</a>
<div class="dropdown-content">
<a href="addcustomer.php">Add Customer</a>
<a href="updatecustomer.php">Edit Customer</a>
<a href="addproduct.php">Add Product</a>
<a href="updateproduct.php">Update Product</a>
</div>
|</li> <li><a href="orders.php">Orders</a></li>
</ul>
</div>
<header>
<img src="../common/techtitan-title.png">
</header>
<nav>
<ul>
<li><a href="index.php">Home</a></li>
<li class="dropdown"><a href="products.html"
class="dropbtn">Products</a>
<div class="dropdown-content">
<!--<a href="products.html">Desktops</a>-->
<a href="products.html">Notebooks</a>
<a href="products.html">Tablets</a>
<a href="products.html">Smartphones</a>
</div>
</li>
<li><a href="services.html">Services</a></li>
<li><a href="about.html">About Us</a></li>
<li><a href="feedback.html">Feedback</a></li>
</ul>
CSS
#loginbar {
text-align: right;
background-color: #1D6000;
color: #FFD700;
font-size: 10pt;
z-index: 2;
overflow: auto;
width: 100%;
display: block;
margin: auto;
}
header {
background-color: #1D6000;
margin-bottom: 0;
text-align: center;
z-index: 1;
}
header img {
margin: auto;
text-align:center;
}
nav {
overflow: auto;
width: 100%;
display: block;
margin: auto;
margin-bottom: 20px;
background-color: #1D6000;
text-align: center;
box-shadow: 0px 8px 16px 0px rgba(5,5,5,0.5);
border-bottom: 3px ridge #FFD700;
font-size: 14pt;
}
nav ul, #loginbar ul {
list-style-type: none;
margin: 0;
padding: 0;
overflow: hidden;
background-color: #1D6000;
}
nav li, #loginbar li {
/*float: left*/
display: inline;
margin: 0;
padding: 0;
}
li a, .dropbtn {
display: inline-block;
color: #FFD700;
text-align: center;
padding: 14px 16px;
text-decoration: none;
}
li a:hover, .dropdown:hover .dropbtn {
background-color: #FFD700;
color: #1D6000;
}
li.dropdown {
display: inline-block;
}
.dropdown-content {
display: none;
position: absolute;
background-color: #1D6000;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(5,5,5,0.5);
/*z-index: 1;*/
}
.dropdown-content a {
color: #FFD700;
padding: 12px 16px;
text-decoration: none;
display: block;
text-align: left;
}
.dropdown-content a:hover {
background-color: #FFD700;
color: #1D6000;
}
.dropdown:hover .dropdown-content {
display: block;
}
最佳答案
按如下方式更新您的 CSS -
nav li, #loginbar li {
display: inline-block;
margin: 0;
padding: 0;
}
因为只有您的 .dropdown
类被设置为 inline-block
,所以下拉菜单没有按要求显示。
关于html - 添加了第二个 css 下拉列表,它不会排队,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47522666/