CSS

2021.02.18

【CSS】角丸線をつくるには?borderの端を丸くする方法

borderの角を丸くするのは、「border-radius」というCSSプロパティを使用することで可能です。

しかし、テキストに下線として引いたborderの端を丸くするには…?

今回はborderの端を丸くする方法をご紹介します。

border-radiusではborderの端を丸くできない

borderの線の端を丸くするのは、「border-radius」では実現できません。

試しにテキストにborder-bottomを指定し下線を引き、border-radiusを指定してみました。

まずは、「テキスト1」をご覧ください。

See the Pen borderの端を丸くする(失敗例) by spiqa design (@spiqa_design) on CodePen.

下側しか丸くなりません。

この場合、spanタグの四方が丸くなるため、spanタグの上端が丸くなっています。

「テキスト2」はborder-bottomだけでなく、四方を指定しました。spanタグの四方が丸くなっているのがわかりますね。

「border-bottomの四方を丸くする」という指定はできないのです。

疑似要素(before, after)で下線を表示させる

解決策としては、疑似要素(before, after)を使用して下線を表示させます。

See the Pen borderの端を丸くする by spiqa design (@spiqa_design) on CodePen.

これはborderに見せかけてborderではなく、widthとheightで長方形を作り、背景色を敷いたものです。

heightのpx数を短く、widthのpx数を長く指定することで、横線をつくります。

作ったborderを、position: absoluteでテキスト下部に配置させて完成です。

角丸線を応用したデザイン

See the Pen qBqrqLv by spiqa design (@spiqa_design) on CodePen.

見出しでよく見る、左側にバーがついているデザインです。

縦線を作る場合は、heightを長く、widthを短くします。

上記コードでは、height: 100%;、width: 5pxに指定しています。

線の端が丸いだけで、かわいくポップな印象になりますね!

疑似要素(before, after)で作った下線は改行に対応できない

この疑似要素(before, after)で作った下線ですが、改行には対応できません。

以下コードをご覧ください。

See the Pen 下線を丸くする by spiqa design (@spiqa_design) on CodePen.

改行させたテキスト下に線は追従せず、一番下にあるのみです。

改行させない見出しなど、ここぞという時に使うのにおすすめです。

まとめ

  • border-radiusでは線の端を丸くすることはできない
  • 疑似要素(before, after)で線を作ることで線端を丸くすることができる
  • 疑似要素(before, after)で作った線は、改行するテキストに追従することはできない

かんたんにできそうなですが、意外に一手間必要なデザインです。

ポップなデザイン、かわいいデザインなどに使ってみてください!

この記事をシェアする

関連記事

  • 2022.02.25

    【CSS】グーやパーに変形!マウスカーソルに掴む動作を実装する方法

    CSS

  • 2022.01.24

    効率的なCSS記述になる!inherit の使い方

    CSS

  • 2021.11.02

    CSSのcursor:pointerが効かない時にまず確認したい3つのこと

    CSS

おすすめ記事

  • 2022.06.30

    【作業のお供に!】おすすめ深夜ラジオ3選

    社員ブログ

  • 2022.04.28

    【カメラ初心者向け】物撮りが上手くなるコツ ~食べ物編~

    その他

    制作

  • 2022.06.15

    スキルを上げたきゃ数をこなせ!1ヶ月毎日ロゴを作った話

    デザイン

    制作

×