--- title: ':nth-last-child()' slug: 'Web/CSS/:nth-last-child' tags: - CSS - ウェブ - セレクター - リファレンス - レイアウト - 疑似クラス translation_of: 'Web/CSS/:nth-last-child' ---
CSS の :nth-last-child()
疑似クラスは、兄弟要素のグループの中での位置に基づいて選択します。
/* 兄弟要素の中で、後ろから数えて 3つおきに要素を選択 */ :nth-last-child(4n) { color: lime; }
メモ: この疑似クラスは、最初から後に向けてではなく最後から前に向けて数えるという点を除けば、本質的に {{Cssxref(":nth-child")}} と同じです。
nth-last-child
疑似クラスは、要素を選択する最後から数えるパターンを表す引数を1つ取ります。
odd
even
<An+B>
n
に正の整数か0が入るとき、 An+B
のパターンに一致する位置の要素を表します。後ろから数えた最初の要素の番号は 1
です。 A
と B
の値は両方とも {{cssxref("<integer>")}} です。tr:nth-last-child(odd)
または tr:nth-last-child(2n+1)
tr:nth-last-child(even)
または tr:nth-last-child(2n)
:nth-last-child(7)
:nth-last-child(5n)
:nth-last-child(3n+4)
:nth-last-child(-n+3)
p:nth-last-child(n)
又は p:nth-last-child(n+1)
<p>
要素を表します。これは単純な p
セレクターと同じです。 (n
はゼロから始まるので、最後の要素が1で始まり、 n
及び n+1
が共に同じ要素を選択します。)p:nth-last-child(1)
または p:nth-last-child(0n+1)
<p>
要素すべてを表します。これは {{cssxref(":last-child")}} セレクターと同じです。<table> <tbody> <tr> <td>First line</td> </tr> <tr> <td>Second line</td> </tr> <tr> <td>Third line</td> </tr> <tr> <td>Fourth line</td> </tr> <tr> <td>Fifth line</td> </tr> </tbody> </table>
table { border: 1px solid blue; } /* 最後から3つの要素を選択 */ tr:nth-last-child(-n+3) { background-color: pink; } /* 後ろから2番目から最初までの要素を選択 */ tr:nth-last-child(n+2) { color: blue; } /* 後ろから2番目の要素のみを選択 */ tr:nth-last-child(2) { font-weight: 600; }
{{EmbedLiveSample('Table_example', 300, 150)}}
数量クエリは、要素が存在する数に応じてスタイル付けします。この例では、リストの中に項目が3つ以上ある場合にリスト項目が赤に変わります。これは nth-last-child
疑似クラスと 一般兄弟結合子の機能を組み合わせることで実現できます。
<h4>4項目のリスト (スタイル付き):</h4> <ol> <li>One</li> <li>Two</li> <li>Three</li> <li>Four</li> </ol> <h4>2項目のリスト (スタイルなし):</h4> <ol> <li>One</li> <li>Two</li> </ol>
/* 3つ以上のリスト項目がある場合、 すべてにスタイル付けする */ li:nth-last-child(n+3), li:nth-last-child(n+3) ~ li { color: red; }
{{EmbedLiveSample('Edge_case_example')}}
仕様書 | 状態 | 備考 |
---|---|---|
{{SpecName('CSS4 Selectors', '#nth-last-child-pseudo', ':nth-last-child')}} | {{Spec2('CSS4 Selectors')}} | 親を持たない要素も一致するよう追加。 |
{{SpecName('CSS3 Selectors', '#nth-last-child-pseudo', ':nth-last-child')}} | {{Spec2('CSS3 Selectors')}} | 初回定義 |
{{Compat("css.selectors.nth-last-child")}}