実務ではかなりの頻度で使う矢印付きのボタン。
上下中央にする方法はいろいろありますが、一番簡単なやり方はtranslate
を使った方法かなと思います。
DEMO
HTML
<a href="#" class="button-02">more</a>
CSS
.button { position: relative; padding: 10px 50px; color: #fff; border-radius: 50vh; background-color: #90aaf7; text-decoration: none; } .button::after { content: ''; position: absolute; right: 20px; top: 50%; width: 6px; height: 6px; border-top: 2px solid #fff; border-right: 2px solid #fff; transform: translate(0, -50%) rotate(45deg); }
top: 50%;
で要素を中央に配置しますが、positionは左上が基準になるため完全に中央にはなりません。
translate
に%で値を指定すると要素に対して相対的に参照されるため、-50%で要素の半分の大きさを移動させて中央に表示させます。
上下左右中央にしたい場合は、top
とleft
を50%、translate(-50%, -50%)
にすれば真ん中に配置されます。