2020年アップデート
CSS グリッド、フレックスボックス、または元の方法をline-height次のように使用できます。
body { display: flex } /* just to prettify */
div {
margin: .5em;
width: 6.25em; height: 6.25em;
background: #eee;
color: #333;
text-align: center
}
.grid {
display: grid;
align-content: end;
}
.flex {
display: flex;
align-items: flex-end;
justify-content: center
}
.lh { line-height: 11.5 /* 6.25*2 - 1.5 */ }
<div class='grid'>Hello</div>
<div class='flex'>Hello</div>
<div class='lh'>Hello</div>
あなたの場合、テキストのとを同じ値に設定することheightは、内のテキストを垂直方向に中央揃えする方法です。それが問題です。divline-height100pxdiv
解決策は、高さの 2 倍からテキストのサイズを引いた値に変更line-heightし、無駄を削除することvertical-alignです。