簡體   English   中英

CSS 下拉導航欄

[英]CSS dropdown navigation bar

有人可以幫助我我的代碼有什么問題,為什么“管理員”選項卡下拉菜單沒有停留在它應該在的地方。 它應該在 admin 選項卡下方,但是當您將鼠標放在 admin 選項卡上時,下拉菜單會出現在 admin 旁邊的選項卡上。 我試圖為管理員的 ul 指定一個 id,但是,沒有任何效果。 保持不變。 非常感謝!!

HTML代碼

<div id="navbar">
    <ul>
        <li> <a href="admin_home.php">Home</a></li>
        <li> <a href="admin_about.php">About us</a></li>

        <li> <a href="admin_games_all.php">Games</a>
            <ul>
                <li> <a href="admin_games_all.php">All Games</a></li>
                <li> <a href="admin_games_outdoor.php">Outdoor Games</a></li>
                <li> <a href="admin_games_indoor.php">Indoor Games</a></li>
                <li> <a href="admin_games_groups.php">Games in Groups</a> </li>
                <li> <a href="admin_games_pair.php">Games in Pair</a></li>
                </ul>
        </li>
        <li><a href="admin_tab.php">Admin</a>
            <ul id="list">
                <li><a href="admin_add.php">Add entry</a></li>
                <li><a href="admin_database.php">Passwor request / suggestions</a></li>
            </ul>
        </li>
        <li> <a href="admin_contact_form.php">Contact us</a></li>
        <li> <a href="logout.php">Log out</a></li>
    </ul>
</div>  

CSS代碼:

/*CSS Naigation Bar*/
#navbar {
width: 100%;
height: 100%; }

#navbar ul {
width: 90%;
position: fixed;
list-style: none;
padding: 0;
margin: 0;
top: 0;
left: 12.5%;
right: 0;
z-index: 1;}

#navbar ul li {
background-color: black;
opacity: 0.7;
float: left;
height: 25%;
width: 16.5%;
padding: 0;
margin: 0;
font-family: Arial;
font-weight: bold;
font-size: 16.5px;
text-align: center;
line-height: 20px;}

#navbar ul li a {
display: block;
padding: 7% 10%;
text-decoration: none;
color: #E4E4E4;}

#navbar ul li a:hover {
background-color: transparent;
color: white;
text-shadow: 0px 0px 2px white, 0px 0px 2px white, 0px 0px 2px white;}

#navbar ul li ul {
list-style: none;
width: 20%;
padding: 0;
margin: 0;
position: absolute;
display: none;
top: 100%;
left: 32%;
right: 40%;
z-index: 1;}

#navbar ul li ul li {
width: 100%;
float: none;
background-color: black;
opacity: 10;
text-align: center;}

#navbar ul li:hover ul {
display: block;} 

#navbar ul li ul #list{
list-style: none;
width: 20%;
padding: 0;
margin: 0;
position: absolute;
display: none;
top: 100%;
left: 50%;
right: 40%;
z-index: 1;}
/*end*/

添加position: relative對於父列表項。

#navbar ul li {
    position: relative;
}

並且您可能希望為子列表項添加寬度,以便它是可讀的。

#navbar ul li ul li {
    width: 150px; /* for example */
}

認為那是你的問題? 是我創建的小提琴

刪除列表ID; 你不需要它; 並替換這個 css :

#navbar ul li ul {
  list-style: none;
  width: 100%;
  padding: 0;
  margin: 0;
  position: relative;
  display: none;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1;
}

從#navbar ul li ul 中刪除左右

將頂部填充添加到#navbar ul li ul

設置寬度 100% #navbar ul li ul

添加相對於#navbar ul li 的位置

#navbar ul li {
background-color: black;
opacity: 0.7;
float: left;
height: 25%;
width: 16.5%;
padding: 0;
margin: 0;
font-family: Arial;
font-weight: bold;
font-size: 16.5px;
text-align: center;
line-height: 20px;
position:relative;}

#navbar ul li ul {
list-style: none;
width: 100%;
padding: 0;
margin: 0;
    padding-top:10px;
position: absolute;
display: none;
top: 100%;
z-index: 1;}

小提琴: http : //jsfiddle.net/f3sokdxt/

參考https://jsfiddle.net/95rqykjx/ CSS 變化如下, #navbar ul li ul, remove width: 20%; and left: 32%; #navbar ul li add position: relative; #navbar ul li ul, remove width: 20%; and left: 32%; #navbar ul li add position: relative;

添加position: relative對於#navbar ul li and left: 0; width: 100%; left: 0; width: 100%; #navbar ul li ul

希望這能解決您的問題。

 #navbar { width: 100%; height: 100%; } #navbar ul { width: 90%; position: fixed; list-style: none; padding: 0; margin: 0; top: 0; left: 12.5%; right: 0; z-index: 1; } #navbar ul li { background-color: black; opacity: 0.7; float: left; height: 25%; width: 16.5%; padding: 0; margin: 0; font-family: Arial; font-weight: bold; font-size: 16.5px; text-align: center; line-height: 20px; position: relative; } #navbar ul li a { display: block; padding: 7% 10%; text-decoration: none; color: #E4E4E4; } #navbar ul li a:hover { background-color: transparent; color: white; text-shadow: 0px 0px 2px white, 0px 0px 2px white, 0px 0px 2px white; } #navbar ul li ul { list-style: none; width: 100%; padding: 0; margin: 0; position: absolute; display: none; top: 100%; left: 0; right: 40%; z-index: 1; } #navbar ul li ul li { width: 100%; float: none; background-color: black; opacity: 10; text-align: center; } #navbar ul li:hover ul { display: block; } #navbar ul li ul #list { list-style: none; width: 20%; padding: 0; margin: 0; position: absolute; display: none; top: 100%; left: 50%; right: 40%; z-index: 1; }
 <div id="navbar"> <ul> <li> <a href="admin_home.php">Home</a></li> <li> <a href="admin_about.php">About us</a></li> <li> <a href="admin_games_all.php">Games</a> <ul> <li> <a href="admin_games_all.php">All Games</a></li> <li> <a href="admin_games_outdoor.php">Outdoor Games</a></li> <li> <a href="admin_games_indoor.php">Indoor Games</a></li> <li> <a href="admin_games_groups.php">Games in Groups</a> </li> <li> <a href="admin_games_pair.php">Games in Pair</a></li> </ul> </li> <li> <a href="admin_tab.php">Admin</a> <ul id="list"> <li><a href="admin_add.php">Add entry</a></li> <li><a href="admin_database.php">Passwor request / suggestions</a></li> </ul> </li> <li> <a href="admin_contact_form.php">Contact us</a></li> <li> <a href="logout.php">Log out</a></li> </ul> </div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM