CSS Web制作

【CSS】見出しなど文字の左右に横線を引く方法【4種類のサンプルで解説】

2022年10月9日

※ 当サイトではアフィリエイト広告を利用しています

見出しの左右に横線付けたいけどどうすればいいの?

見出しの装飾には色んな種類がありますが、左右に横線を付けるタイプは非常によくあります。

今回は、見出しの左右に横線を付ける4つの方法を解説します。

じゅんぺいブログは、Web制作コーディングWordPress制作)の技術記事を中心に、約500記事公開しています。ぜひ他の記事も参考にしてみてください!
完全無料のプログラミングスクール『ZeroPlus Gate』
30日間でWeb制作を学べる無料のプログラミングスクールがこちら
いきなり数十万するプログラミングスクールは厳しい・・・という人のお試しに最適です。
現在は無料ですがいつ有料になるか分からないので、気になる方はお早めに👇
(有料になっていたらすいません🙇‍♂️)

\ 完全無料 /

ZeroPlus Gate公式サイト

毎日先着制!

CSSで見出しや文字などテキストの左右に横線を入れる4つの方法

今回解説する方法は、以下の4つになります。

  • 左右に指定した長さの横線
  • 左右に両端を丸くした横線
  • 左右いっぱいに伸びた横線
  • 左右にグラデーションの横線

HTMLの書き方は、共通でこちらになります。

<h2 class="heading">文字が入ります</h2>

それでは1つずつ解説していきます。

 

左右に指定した長さの横線

こちらがサンプル(デモ)になります。

See the Pen
Untitled
by junpei (@junpei-sugiyama)
on CodePen.

左右の線は指定しているので、文字の長さが変わっても変わりません。

 

CSSのコード

CSSの書き方はこちら。

/* 左右に横線 */
.heading {
  align-items: center; /* 横線を上下中央 */
  display: flex; /* 文字と横線を横並び */
  justify-content: center; /* 文字を中央寄せ */
}
.heading::before,
.heading::after {
  background-color: #1e90ff; /* 横線の色 */
  content: "";
  height: 5px; /* 横線の高さ */
  width: 60px; /* 横線の長さ */
}
.heading::before {
  margin-right: 15px; /* 文字との余白 */
}
.heading::after {
  margin-left: 15px; /* 文字との余白 */
}

解説は全てコメントアウトで記入していますが、pxで書いている箇所で横線の高さ・幅・文字との余白を調整可能です。

 

左右に両端を丸くした横線

今度は、先ほどの横線の両端を丸くしてみます。

See the Pen
左右に指定した長さの横線(両端を丸くする)
by junpei (@junpei-sugiyama)
on CodePen.

 

CSSのコード

CSSの書き方はこちら。

先ほどとの違いは、border-radiusだけです(あとは丸みが分かりやすいように高さを倍にしてあります)

/* 左右に横線(両端を丸く) */
.heading {
  align-items: center; /* 横線を上下中央 */
  display: flex; /* 文字と横線を横並び */
  justify-content: center; /* 文字を中央寄せ */
}
.heading::before,
.heading::after {
  background-color: #1e90ff; /* 横線の色 */
  border-radius: 5px; /* 横線の両端を丸く */
  content: "";
  height: 10px; /* 横線の高さ */
  width: 60px; /* 横線の長さ */
}
.heading::before {
  margin-right: 15px; /* 文字との余白 */
}
.heading::after {
  margin-left: 15px; /* 文字との余白 */
}

 

左右いっぱいに伸びた横線

先ほどまでの横線は指定した長さでしたが、今度は左右いっぱいに伸びた横線です。

画面幅いっぱいだと画面外に飛び出ているか判断しにくいので.containerというclassのdivタグで囲って、divタグ内で左右いっぱいにしてみます。

See the Pen
左右いっぱいに伸びた横線
by junpei (@junpei-sugiyama)
on CodePen.

今回は、以下のような仕様です。

  • 文字数と関係なく左右いっぱいの横線
  • 画面幅が狭くなれば横線も合わせて短くなる

CodePen左上のHTMLCSSをクリックすると画面幅が狭くなるので、それで横線も自然に狭くなるのが分かります。

 

CSSのコード

CSSの書き方はこちら。

/* 左右いっぱいに伸びた横線 */
.heading {
  align-items: center; /* 横線を上下中央 */
  display: flex; /* 文字と横線を横並び */
}
.heading::before,
.heading::after {
  background-color: #1e90ff; /* 横線の色 */
  border-radius: 5px; /* 横線の両端を丸く */
  content: "";
  flex-grow: 1; /* 横幅いっぱい */
  height: 5px; /* 横線の高さ */
}
.heading::before {
  margin-right: 15px; /* 文字との余白 */
}
.heading::after {
  margin-left: 15px; /* 文字との余白 */
}

ほとんど先ほどまでと同じですが、大きく違うのはFlexboxのプロパティである、flex-grow: 1;です。

これが左右の伸び方の比率(フレックス伸長係数)を設定するプロパティで、これを1にすることで左右いっぱいにしています。

またflex-grow: 1;を設定することで、先ほどまであったjustify-content: center;で中央寄せする必要はなくなります。

あわせて読みたい
【CSS】Flexboxの基本的な使い方を徹底解説【サンプルコードあり】

続きを見る

 

左右にグラデーションの横線

最後に、左右にグラデーションの横線を付けてみます。

ベースは『左右に両端を丸くした横線』です。

See the Pen
左右にグラデーションの横線
by junpei (@junpei-sugiyama)
on CodePen.

 

CSSのコード

CSSの書き方はこちら。

/* 左右にグラーデションの横線 */
.heading {
  align-items: center; /* 横線を上下中央 */
  display: flex; /* 文字と横線を横並び */
  justify-content: center; /* 文字を中央寄せ */
}
.heading::before,
.heading::after {
  border-radius: 5px; /* 横線の両端を丸く */
  content: "";
  height: 5px; /* 横線の高さ */
  width: 60px; /* 横線の長さ */
}
.heading::before {
  background: linear-gradient(to right, green, yellow); /* 左のグラデーション */
  margin-right: 15px; /* 文字との余白 */
}
.heading::after {
  background: linear-gradient(to right, yellow, green); /* 右のグラデーション */
  margin-left: 15px; /* 文字との余白 */
}

ベースとなる『左右に両端を丸くした横線』との違いは、background: linear-gradient();でグラデーションを指定しているところです。

今回のグラデーションは線形グラデーションのlinear-gradientを使いましたが、円形グラデーションのradial-gradientを使うことも出来ます。

グラデーションについては以下の記事を参照下さい。

あわせて読みたい
【コピペOK!】CSSグラデーションの作り方まとめ
CSSグラデーションの作り方まとめ【コピペOK!】

続きを見る

まとめ

今回は、見出しなど文字(テキスト)の左右に横線を引く方法を4つご紹介しました。

見出しの装飾は実務でも良くある実装なので、できるようにしておきましょう。

以上になります。

あわせて読みたい
【CSS】見出しなど文字の左右に斜めの線を引く方法【サンプル付きで解説】
【CSS】見出しなど文字の左右に斜めの線を引く方法【サンプル付きで解説】

続きを見る

あわせて読みたい
【CSS】見出しなど文字の幅より短い下線を引く方法【サンプル付きで解説】
【CSS】見出しなど文字の幅より短い下線を引く方法【サンプル付きで解説】

続きを見る

この記事が役に立ったと思ったら、シェアボタンからX(旧Twitter)などにシェアすると、いいねされてフォロワーが増えたりすることがあるよ!

 

  • この記事を書いた人

じゅんぺい

37歳からWeb制作とブログ開始。Web制作歴5年目でコーディングとWordPressオリジナルテーマ制作が中心。これまで120件以上を納品。当ブログ月間最高15万PVで、370記事以上はWeb制作の技術記事。コンテンツ販売→累計売上1200万円&1500部超え。X(旧Twitter)フォロワー7200人以上。2024年3月からブログの経験を活かしてライターとしても活動を開始。

-CSS, Web制作
-