• Home
  • CSSで文字の横に線がびよーんと伸びる見出しを作成する

CSSで文字の横に線がびよーんと伸びる見出しを作成する

この記事では文字の横に線がびよーんと伸びる見出しスタイルの作成の仕方について説明します。

CSSで文字の横に線がびよーんと伸びる見出しを作成する-image-1

画像のようなスタイルです。

指定するタグ

html

<h1 class="sideLine">見出し</h1>

css

.sideLine {
 display: flex;
 align-items: center;
}
.sideLine:before,
.sideLine:after {
 content: '';
 height: 1px;
 flex-grow: 1;
 background-color: #000000;
}
.sideLine:before {
 margin-right: 20px;
}
.sideLine:after {
 margin-left: 20px;
}

タグの解説

.sideLine {
 display: flex;
 align-items: center;
}

見出しをdisplay:flexにすることで、要素を横並びにしています。

align-items: center;で縦の位置が中央にそろうように設定。

.sideLine:before,
.sideLine:after {
 content: '';
 height: 1px;
 flex-grow: 1;
 background-color: #000000;
}

見出しの前後に空の要素を作ります。

flex-grow: 1;で自動的に親要素全体に線が伸びるように設定。

heightを変えると線の太さが、background-colorを変えると線の色が変わります。

.sideLine:before {
 margin-right: 20px;
}
.sideLine:after {
 margin-left: 20px;
}

それぞれにmarginを設定して、文字との間の隙間を設定しています。


おまけ:scssでの指定方法

最近はスタイルをscssで作成することが多いので、scssでの指定方法も記載しておきます。

.sideLine {
 display: flex;
 align-items: center;
 &:before,
 &:after {
  content: '';
  height: 1px;
  flex-grow: 1;
  background-color: #000000;
 }
 &:before {
  margin-right: 20px;
 }
 &:after {
  margin-left: 20px;
 }
}
プロフィール画像
sake現役システムエンジニア

現役システムエンジニア。普段はホスト系のお仕事してます。

ブログでは主にWeb関係の技術について、勉強したことや実際にコーディングしてみた内容を発信していきます。