SHU BLOG

News

BLOG NEWS

  • ARTICLE
    2026.10.27
  • CATEGORY
TITLE

【CSS】初心者向け擬似要素、擬似クラスについて理解しましょう!

SHU[シュウ]

1991年生まれ九州の宮崎県育ち
高校卒業後、愛知県で自動車関係の
お仕事に5年間勤め、WEB業界に
転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画
基本インドアです!

サーバーとドメインの同時取得で.jpが無料

シュウ
シュウ
公開日: 2020.02.22 / 更新日: 2026.10.27
今回は【CSS】初心者向け擬似要素、擬似クラスについて解説していきます。

  • CSSの擬似クラス・擬似要素を初めて学ぶ方
    :first-childや::beforeなど、名前は聞くけれど使い方がよく分からない方です。
  • HTMLにクラスを追加せずにデザインしたい方
    リストの偶数行だけ色を変えるなど、HTMLを変更せずにCSSだけでスタイルを調整したい方です。
  • 現場で使われるCSSの書き方を知りたい方
    実務でよく使用される擬似クラス・擬似要素を、サンプルコードで確認したい方です。

擬似クラス・擬似要素とは

擬似クラス・擬似要素とは

擬似クラスは、要素の位置や状態に応じてスタイルを適用する仕組みです。擬似要素は、要素の一部分や、要素の前後にスタイルを適用・コンテンツを追加する仕組みです。どちらもHTMLにクラス名を追加せずにデザインできるため、現場で頻繁に使用されます。

擬似クラスは種類が多いため、今回は現場でよく使用されるものに絞って紹介します。

●①擬似クラス(:)
コロン1つで記述します。:first-childや:nth-child()など、要素の位置や状態を条件にスタイルを適用します。
●②擬似要素(::)
コロン2つで記述します。::first-letterや::beforeなど、要素の一部分や前後にスタイルを適用します。

サンプルHTMLの準備

シンプルなリストを作成しましょう。今回はulとliを使い、項目を6つ用意して擬似クラスを適用します。

<ul>
    <li>項目1</li>
    <li>項目2</li>
    <li>項目3</li>
    <li>項目4</li>
    <li>項目5</li>
    <li>項目6</li>
</ul>
●①ul
リスト全体を囲む要素です。擬似クラスの対象となるliの親要素になります。
●②li
リストの各項目です。:first-childなどは、このliの位置を基準にスタイルを適用します。

See the Pen GRJNpby by shu (@shu0325) on CodePen.

擬似クラスの使い方

最初の要素にだけスタイルを適用する

:first-child擬似クラスは、最初の子要素にスタイルが適用されます。

ul li:first-child {
    background-color: #e2d0b6;
}
●①ul li:first-child
ulの子であるliのうち、最初の1つだけが対象になります。
●②background-color
対象の背景色を#e2d0b6に指定します。

See the Pen KKpNdLE by shu (@shu0325) on CodePen.

最後の要素にだけスタイルを適用する

:last-child擬似クラスは、最後の子要素にスタイルが適用されます。

ul li:last-child {
    background-color: #e2d0b6;
}
●①ul li:last-child
ulの子であるliのうち、最後の1つだけが対象になります。
●②background-color
対象の背景色を#e2d0b6に指定します。

See the Pen YzXpymx by shu (@shu0325) on CodePen.

偶数番目の要素にスタイルを適用する

:nth-child(even)擬似クラスは、偶数番目の子要素にスタイルが適用されます。

ul li:nth-child(even) {
    background-color: #e2d0b6;
}
●①nth-child(even)
evenは偶数を表すキーワードで、2・4・6番目が対象になります。

See the Pen abOBdoN by shu (@shu0325) on CodePen.

奇数番目の要素にスタイルを適用する

:nth-child(odd)擬似クラスは、奇数番目の子要素にスタイルが適用されます。

ul li:nth-child(odd) {
    background-color: #e2d0b6;
}
●①nth-child(odd)
oddは奇数を表すキーワードで、1・3・5番目が対象になります。

See the Pen bGdBEbm by shu (@shu0325) on CodePen.

上からn番目の要素にスタイルを適用する

:nth-child(3)擬似クラスは、上から3番目の子要素にスタイルが適用されます。:nth-child(5)擬似クラスは、上から5番目の子要素にスタイルが適用されます。

/*上から3番目の子要素を茶色*/
ul li:nth-child(3) {
    background-color: #e2d0b6;
}

/*上から5番目の子要素を緑色*/
ul li:nth-child(5) {
    background-color: #b3d3ae;
}
●①nth-child(3)
括弧内に数字を指定すると、上から数えたその番号の要素だけが対象になります。
●②nth-child(5)
数字を変えるだけで、対象の要素を自由に変更できます。

See the Pen dyoOGyW by shu (@shu0325) on CodePen.

下からn番目の要素にスタイルを適用する

:nth-last-child(2)擬似クラスは、下から2番目の子要素にスタイルが適用されます。:nth-last-child(4)擬似クラスは、下から4番目の子要素にスタイルが適用されます。

/*下から2番目の子要素を茶色*/
ul li:nth-last-child(2) {
    background-color: #e2d0b6;
}

/*下から4番目の子要素を緑色*/
ul li:nth-last-child(4) {
    background-color: #b3d3ae;
}
●①nth-last-child(2)
下から数えて2番目の要素だけが対象になります。
●②nth-last-child(4)
下から数えて4番目の要素だけが対象になります。

See the Pen ExjNPaK by shu (@shu0325) on CodePen.

3の倍数の要素にスタイルを適用する

:nth-child(3n)擬似クラスは、3の倍数の子要素にスタイルが適用されます。

ul li:nth-child(3n) {
    background-color: #e2d0b6;
}
●①nth-child(3n)
nには0, 1, 2…が順に入るため、3・6・9番目が対象になります。数字を変えれば、2の倍数や4の倍数にも応用できます。

See the Pen LYVbGpW by shu (@shu0325) on CodePen.

擬似要素の使い方

ここからは擬似要素です。擬似クラスと違い、コロンを2つ付けて記述します。::first-letterと::first-lineの確認には、文章のpタグを使用します。

<p>これはサンプルの文章です。擬似要素を使うと、文章の最初の文字や最初の行だけにスタイルを適用できます。画面幅によって、最初の行の長さは変わります。</p>

最初の文字にスタイルを適用する

::first-letter擬似要素は、最初の1文字にスタイルが適用されます。

p::first-letter {
    color: #b3d3ae;
    font-size: 30px;
}
●①p::first-letter
pタグ内の最初の1文字だけが対象になります。
●②color / font-size
文字色を緑系にして、文字サイズを30pxに大きくしています。

See the Pen oNXYbLw by shu (@shu0325) on CodePen.

最初の行にスタイルを適用する

::first-line擬似要素は、最初の1行にスタイルが適用されます。

p::first-line {
    color: #b3d3ae;
}
●①p::first-line
pタグ内の最初の1行だけが対象になります。画面幅が変わると、対象の範囲も変わります。

See the Pen GRJNodw by shu (@shu0325) on CodePen.

::beforeを適用する

::beforeを使用すると、要素の直前にコンテンツが挿入されます。

ul li::before {
    content: '●';
    color: #b3d3ae;
}
●①content: ‘●’;
挿入する内容を指定します。contentは::before・::afterで必須のプロパティで、指定しないと表示されません。
●②color
挿入した記号の色を指定します。

See the Pen XWbNdqY by shu (@shu0325) on CodePen.

::afterを適用する

::afterを使用すると、要素の直後にコンテンツが挿入されます。

ul li::after {
    content: '▲';
    color: #b3d3ae;
}
●①content: ‘▲’;
要素の直後に表示する内容を指定します。
●②color
挿入した記号の色を指定します。

See the Pen OJVbNrX by shu (@shu0325) on CodePen.

まとめ

今回は、現場でよく使用する擬似クラス・擬似要素をまとめて紹介しました。
擬似クラス(:)は要素の位置や状態を条件に、擬似要素(::)は要素の一部分や前後に対してスタイルを適用します。
どちらも実務で確実に使用するので、サンプルを試しながら覚えておきましょう。

POINT
  • 擬似クラスはコロン1つ(:)、擬似要素はコロン2つ(::)で記述します。
  • :first-childと:last-childで、最初と最後の要素にスタイルを適用します。
  • :nth-child(even)と:nth-child(odd)で、偶数・奇数番目の要素にスタイルを適用します。
  • :nth-child(n)は上から、:nth-last-child(n)は下から数えて対象の要素を指定します。
  • :nth-child(3n)のように記述すると、3の倍数など規則的な要素を指定できます。
  • ::first-letterは最初の文字、::first-lineは最初の行にスタイルを適用します。
  • ::beforeと::afterは、要素の前後にコンテンツを挿入します。
  • ::before・::afterを使用するときは、contentプロパティを必ず指定します。

テンプレートを見る

Web・デザインの本棚

Web・デザインの本棚を見る

スポンサーリンク

SHU

1991年生まれ九州の宮崎県育ち高校卒業後、愛知県で自動車関係のお仕事に5年間勤め、WEB業界に転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画基本インドアです!笑
つくる、しあわせをテーマとして主にWEBに関する様々な情報を発信しています。

オススメ記事

カテゴリー

月別アーカイブ

Others Posts記事

NEW
本の紹介