0
を私はフレキシボックスでこれをしようとしているが、私は間違っているかを把握することはできません following template適応幅とFlex-成長
とメニューバーを設定しようとしています。ここではHTMLです:
<nav>
<ul>
<li id="navleft">
<img src="images/logo.png" alt="logo wikihow">
</li>
<li class="navothers">
<img src="images/contribuye.png" alt="contribuye">
<p>CONTRIBUYE</p>
</li>
<li class="navothers">
<img src="images/explora.png" alt="explora">
<p>EXPLORA</p>
</li>
<li class="navothers">
<img src="images/entrar.png" alt="entrar">
<p>ENTRAR</p>
</li>
<li class="navothers"><img src="images/mensajes.png" alt="mensajes">
<p>MENSAJES</p>
</li>
</ul>
</nav>
そして、私はCSSで次のスタイルを適用します。
nav {
padding: 0 30% 0 30%;
}
nav ul {
display:flex;
justify-content:center;
align-items:center;
background-color: #93B874;
}
#navleft{
flex-grow:32;
flex-shrink:1;
}
#navleft img{
width: 144px;
vertical-align:center
}
.navothers{
flex-grow:1;
flex-shrink:4;
}
私の問題は、右の部分内のすべての要素(「持つことになってしまいますnavothers "クラス)は同じ幅を持たない!彼らはちょうど彼らが持っているテキストのサイズに応じて適応します。
私は多くのものを混ぜているかもしれませんが、どうしたのですか?
ありがとう! LGSonが述べたように、主な問題はflex-basis属性のためです。あなたの例では、 "flex-1:"という短いバージョンを使用して、 "flex-basis:0"という基準を設定します。 navのセンタリング方法については、私はテストするためにそれをしましたが、何が間違っていますか? – Plancton
私は幅とマージンを設定します:auto; – Joulss