皆さんは、CSSで疑似クラス「last-child」を使ったことがありますか?
画面でリスト・テーブルなどにデザインを付けるとき、last-childの使い方を覚えておくと便利です。
そこで今回は、
- CSSの疑似クラス「last-child」とは?
- CSSの疑似クラス「last-child」の使い方
といった基礎的なことから、
- CSSの疑似クラス「last-child」の使いどころ
- 要素の位置を指定する他の疑似クラスは?
といった応用的な方法まで、徹底的に解説します!
CSSの疑似クラス「last-child」とは?
まず、CSSの疑似クラス「last-child」について簡単に解説します。last-childは要素の最後のみにCSSを適用するための疑似クラスです。
たとえば、リストの最後のみデザインを加えたいときに使います。
サンプル:
直接クラスを用意しなくてもデザインを設定できるので、使い方を覚えておくと便利です!
CSSの疑似クラス「last-child」の使い方
次に、具体的な「last-child」の使い方について解説します。
使い方は、次のとおりです。
使い方:
〇〇〇〇:last-child{
}
例:
/* liタグの最後にデザイン設定 */
li:last-child{
}
/* class名「text-list」の最後にデザイン設定 */
.text-list:last-child{
}
このように、簡単に「:last-child」をつけるだけで、要素の最後にCSSを指定することができます。
CSSの疑似クラス「last-child」の使いどころ
では、どのようなタイミングでCSSの疑似クラス「last-child」を使うのでしょうか?
よくあるのが、横並びのリストで最後のみデザインを消したいとき、たとえば、liタグの右側に罫線を引くことで、要素を区切って表示するような場合です。そのまま設定した場合は、次のように最後のリストにも区切り線が表示されてしまいます。
区切り線が最後にも表示されてしまうサンプル:
![]()
本来あるべき姿は、以下ですよね。
本来あるべき姿:
![]()
上記のように最後のみデザインを変更したい場合は、「last-child」を使います!
サンプルコード - HTML:
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>「last-child」サンプル</title>
<link rel="stylesheet" href="2_main.CSS">
</head>
<body>
<h2>「last-child」サンプル</h2>
<div class="box">
<ul>
<li>python</li>
<li>php</li>
<li>vba</li>
<li>ruby</li>
</ul>
</div>
</body>
</html>
サンプルコード - CSS:
/* liタグ全体の設定 */
li {
width:100px;
float:left; /* 横並びで表示 */
list-style-type:none; /* リストに表示される「●」を非表示*/
border-right:1px solid #000; /* 右に区切り線を表示*/
}
/* liタグの最後のみ枠線を消す設定 */
li:last-child{
border-right:none;
}
/* わかりやすくするために、枠線のクラスを用意 */
.box{
border:solid 1px grey;
text-align:center;
padding: 10px 0px;
overflow:hidden;
width:500px;
}
実行結果:
![]()
最後の区切り線を消すことができていますよね。
このように、全体に設定したデザインから、最後の要素のみ消すときに使うケースが多いため、使い方とあわせて覚えておくのがおすすめです!
要素の位置を指定する他の疑似クラスは?
ここまで疑似クラス「last-child」の概要・使い方・具体的な使いどころについて解説してきました。
ただ、最初の要素のデザインを変えたい場合や、要素の番号を指定してデザインを変更したいケースもありますよね。last-childの仲間の疑似クラスがいくつかあるので、合わせて覚えておくのがおすすめです!
要素の位置を指定した疑似クラス一覧:
No | 書き方 | 意味 |
1 | :first-child | 最初 |
2 | :last-child | 最後 |
3 | :nth-child(n) | n番目 |
4 | :nth-last-child(n) | 後ろからn番目 |
「first-child」使い方は、疑似クラス「last-child」と同じです。
「nth-child(n)」は前からn番目要素、「nth-last-child(n)」は後ろからn番目の要素に指定することができます。
まとめ
今回は、最後の要素にデザインを指定するための疑似クラス「last-child」について解説しました。
クラスを直接指定してデザインを指定することもできますが、CSSが膨大な量になってしまうこともあるので、疑似クラスの使い方を覚えておくと便利です!
使い方も簡単なので、ぜひ使ってみてくださいね!