2 回答

TA貢獻1765條經驗 獲得超5個贊
在 內部添加 div 從語義上來說是不正確的ul。在子菜單所屬的父li內添加子菜單。
nav {
width: 100%;
flex: 1;
}
nav ul {
display: flex;
flex-flow: row wrap;
list-style: none;
padding-top: 4%;
margin: 0;
}
nav ul li {
padding: 1em 4em;
}
nav ul li a {
text-decoration: none;
margin-right: auto;
color: #000;
font-size: 17px;
}
nav ul li a:hover {
border-bottom: 2px solid #724c20;
}
li.logo {
margin-right: auto;
}
.Submenu {
display: none;
}
nav ul li:hover .Submenu {
display: block;
background-color: #724c20;
position: absolute;
margin-top: 15px;
margin-left: -15px;
}
nav ul li:hover .Submenu ul {
display: block;
margin: 10px;
}
nav ul li:hover .Submenu ul li {
width: 150px;
padding: 10px;
border-bottom: 1px;
background: transparent;
border-radius: 0;
text-align: center;
}
nav ul li:hover .Submenu ul li:last-child {
border-bottom: none;
}
nav ul li:hover .Submenu ul li a:hover {
color: #d1b9a5;
}
<nav>
<ul class="menu">
<li class="logo">
<a href="..."><img src="..." class="logo" alt="..."></a>
</li>
<li class="item"><a href="...">..</a>
<div class="Submenu">
<ul>
<li><a href="..">..</a></li>
<li><a href="..">..</a></li>
<li><a href="..">..</a></li>
<li><a href="..">..</a></li>
</ul>
</div>
</li>
<li class="item"><a href="...">..</a></li>
<li class="item"><a href="...">..</a>
<div class="Submenu">
<ul>
<li><a href="..">..</a></li>
<li><a href="..">..</a></li>
<li><a href="..">..</a></li>
<li><a href="..">..</a></li>
<li><a href="..">..</a></li>
</ul>
</div>
</li>
<li class="item"><a href="..">..</a></li>
</ul>
</nav>

TA貢獻1777條經驗 獲得超3個贊
我使用 javascript 制作下拉菜單。選擇下拉菜單display: none;。要顯示下拉菜單,您必須執行某些操作,例如單擊圖標。所以你必須導入一個圖標或添加一個按鈕并使用javascript:
<script type="text/javascript">
$("*here comes your icon's/div's/button's id/class name you want*").click(function(){
$(".Submenu").toggleClass("active");
});
</script>
比你必須在 CSS 中編寫 .Submenu 處于活動狀態時會發生什么情況:
.Submenu.active {
display: block;
}
這是我上一個項目的示例:
<script type="text/javascript">
$(".menu-toggle-btn").click(function(){
$(this).toggleClass("fa-times");
$(".navigation-menu").toggleClass("active");
});
如果你想,當你點擊一個圖標并且下拉菜單中的圖標將更改為另一個圖標時,你必須將其寫入你的 javascript 腳本中: $(this).toggleClass("fa-times");。toggleClass("here comes your icons class name ");
如果您有任何其他問題,請隨時詢問。
添加回答
舉報