いくつかの順序付けられていない要素が水平に表示されているナビゲーションを持っていて、ナビゲーションのこれらの要素のサブメニューがあります。それらを並べて表示するように、1行に2つだけ表示します。行ごとに2つのドロップダウンulを表示する方法
をそして私はそれになりたい方法:
それが実際にどのように見えるか
(の左側に揃え、要素を並べて表示するだけで2列幅50%ずつ)。しかし、私はそれを成し遂げることができないが、ここではこれがあなたのニーズのために役に立つかもしれない、私がこれまでに得たもの
HTML
<nav id="menu">
<ul>
<li class="menu1"><a href="">HOME</a></li>
<li class="left"><a href="">NEWS</a></li>
<li class="left"><a href="">VIDEOS</a></li>
<li class="left"><a href="">STYLE</a></li>
<li class="left"><a href="">BEAUTY</a></li>
<li class="left"><a href="">MOMS</a></li>
<li class="left"><a href="">ENTERTAINMENT</a></li>
<li class="left"><a href="">PETS</a></li>
<li class="left"><a href="" class="news">NEWS</a>
<ul>
<li><a href="">Content1</a></li>
<li><a href="">Content2</a></li>
<li><a href="">Content3</a></li>
<li><a href="">Content4</a></li>
<li><a href="">Content5</a></li>
<li><a href="">Content6</a></li>
<li><a href="">Content7</a></li>
<li><a href="">Content8</a></li>
</ul>
</li>
</nav>
CSS
#menu {
position: absolute;
left:80px;
top:50%;
transform: translate(0%,-50%);
-webkit-transform: translate(0%,-50%);
}
#menu ul {
list-style:none;
position:relative;
float:left;
margin:0;
padding:0;
top:50%;
}
#menu ul li {
display: inline;
position: relative;
}
#menu ul li a {
color: #fff;
text-decoration: none;
font-family: 'Cabin', sans-serif;
background-color: ;
position: relative;
padding-top: 12px;
padding-bottom: 10px;
padding-right: 10px;
padding-left: 10px;
transition: background-color 0.2s ease-in-out;
}
#menu ul li a.news {
color:#ec008c;
transition: color 0.2s ease-in-out;
}
#menu ul li a:hover.news {
color: #fff;
}
#menu ul li a:hover {
background-color: #ec008c;
text-decoration: none;
border-bottom: 2px solid #bf1b33;
color: #fff;
}
#menu ul ul
{
display:none;
position:absolute;
top:100%;
right: 0%;
margin-left:0px;
text-align: center;
width: 350px;
line-height: 60px;
margin-top:12px;
background-color: #243641;
}
#menu ul ul.longer {
width: 150px;
}
#menu ul ul li
{
float:none;
width:100%;
background-color: ;
}
#menu ul ul a
{
line-height: 0px;
padding:0px 5px;
width: 100%;
background-color: ;
}
#menu ul li:hover > ul
{
display:block;
}
wow you're great @Eria !!!!ありがとうございます! – Eugenio
これは唯一の解決策ではないかもしれませんし、より良い解決策もありません。それはあなたの現在のコードに基づいてちょうど最速です。 OboshtoとRoyが提案した他のソリューションを見てください。あなたがそれらが存在することを知っていて、あなたのメニューをデザインする方法を再考するかもしれません。 – Eria
ありがとうございました。そのululリストの中の要素にもっと近づく方法がありますか?私はパディングを変更しているが、大量のスペースでそれらを表示し続けることを意味する:( – Eugenio