ナビゲーションメニューがあり、最初の項目はアイコンでコンテンツを置き換えます。私は、メイン要素のfont-size
を0px
に設定し、その後にafter要素を追加することでこれを行います。これは一般的な習慣と思われ、これまでのところうまくいきます。アイコンを含む「後」要素を垂直に整列する
しかし、私は後の要素をナビゲーションメニューの残りの部分に揃えるように見えません。
私はline-height
とvertical-align
で遊んでいましたが、私の目標に近づけましたが、わかるように、まだ期待どおりに動作していません。
フィドルは、ここで見つけることができます:ここでhttps://jsfiddle.net/67dyxLr1/
<nav class="nav-primary">
<ul class="menu">
<li class="menu-item home"><a href="#">Home</a></li>
<li class="menu-item"><a href="#">Blog</a></li>
<li class="menu-item"><a href="#">Contact</a></li>
<li class="menu-item"><a href="#">About Us</a></li>
</ul>
</nav>
は私のCSSです:
.nav-primary {
background: #CCC;
}
.nav-primary li {
list-style-type: none;
display: inline-block;
text-align: left;
font-size: 26px;
line-height: 0px;
}
.nav-primary a {
display: inline-block;
padding: 32px 20px;
border: 1px dashed black; /* border only used for display purpose of alignment*/
margin-right: -4px;
}
.nav-primary a:hover {
background: #FFF;
}
.menu {
width: 100%;
}
.menu-item {
}
.home a {
font-size:0px;
}
.home a:after {
font-family: "dashicons";
content: " \f102";
font-size: 40px;
display: inline-block;
vertical-align: middle;
line-height: 0px;
}
に
vertical-align: middle
を追加します。 – zik