CSSでマテリアルアイコンを使用して、アイコンとテキストでリンクをレンダリングする次のコードがあります。
<a href="#"><i class="material-icons">group_work</i>Groups</a>
下の画像でわかるように、テキストが沈んでいるように見えます。垂直方向に中央に揃えてください。どうすればこれを達成できますか?
PS。 (デザイナーではありません!)
要素を垂直方向に中央揃えするには、 vertical-algin: middle;
ルール。あなたの場合、それはおそらく次のようになります。
.material-icons {
vertical-align: middle;
}
暗いボタンの例を次に示します。
.material-icons {
vertical-align: middle;
margin-right: 5px;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.7/css/materialize.min.css" rel="stylesheet" />
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<a href="#" class="grey darken-3 btn"><i class="material-icons">group_work</i>Groups</a>
<link href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.7/css/materialize.css" rel="stylesheet"/>
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<a href="#" class="grey darken-4 btn"><i class="material-icons left">group_work</i>Groups</a>
vertical-align
:middleapplied to the icon
i`は最も簡単なオプションですが、結果に一貫性がない場合があります。
リンクをdisplay:inline-flex
に設定するとより良い結果が得られますが、違いはかなり微妙です。
vertical-align
は、サポートされていないブラウザのフォールバックとして引き続き使用できます。
a {
margin: 1em;
display: inline-block;
}
a i {
vertical-align: middle;
}
a.flex {
display: inline-flex;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.7/css/materialize.min.css" rel="stylesheet" />
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<a href="#" class=""><i class="material-icons">group_work</i>Groups</a>
<br/>
<a href="#" class="flex"><i class="material-icons">group_work</i>Groups</a>
a {
display: inline-flex;
align-items: center;
}
トリックを行います;)