CSSで後ろから何番目に指定するには?
Webページのスタイリングを行う際、要素の順番を基準にスタイルを適用したい場合があります。特に、リストの最後から数えて何番目の要素といった指定は、CSSの擬似クラスを使うことで実現できます。
:nth-last-of-type(n) と :nth-last-child(n)
CSSで要素を後ろから指定するには、主に以下の2つの擬似クラスを使用します。
擬似クラス | 説明 |
---|---|
:nth-last-of-type(n) |
親要素内の同じ型の要素の中で、後ろからn番目の要素を選択します。 |
:nth-last-child(n) |
親要素内の全ての子要素の中で、後ろからn番目の要素を選択します。 |
これらの擬似クラスでは、"n" の部分に数値を指定することで、後ろから何番目の要素を選択するかを指定できます。例えば、:nth-last-of-type(2)
は、後ろから2番目の要素を選択します。
使用例
:nth-last-of-type(n) の例
以下のHTMLコードでは、リストの最後のリストアイテムの文字色を赤色に設定しています。
<ul>
<li>リストアイテム1</li>
<li>リストアイテム2</li>
<li>リストアイテム3</li>
</ul>
<style>
li:nth-last-of-type(1) {
color: red;
}
</style>
:nth-last-child(n) の例
以下のHTMLコードでは、段落要素の中で、後ろから2番目の段落要素の背景色を黄色に設定しています。
<div>
<p>段落1</p>
<p>段落2</p>
<span>スパン</span>
<p>段落3</p>
</div>
<style>
p:nth-last-child(2) {
background-color: yellow;
}
</style>
注意点
:nth-last-of-type(n)
は、同じ型の要素の中で順番を判断しますが、:nth-last-child(n)
は、要素の種類に関係なく順番を判断します。- "n" には、数値だけでなく、"even" (偶数) や "odd" (奇数) などのキーワードも指定できます。
参考資料
よくある質問
Q1. :nth-last-of-type(n) と :nth-last-child(n) の違いは何ですか?
A1. :nth-last-of-type(n) は、親要素内の同じ型の要素の中で順番を判断しますが、:nth-last-child(n) は、要素の種類に関係なく順番を判断します。
Q2. "n" にはどのような値を指定できますか?
A2. "n" には、数値だけでなく、"even" (偶数) や "odd" (奇数)、"an + b" (等差数列) などのキーワードも指定できます。
Q3. :nth-last-of-type(n) を使って、最後から3番目の要素を選択するにはどうすればよいですか?
A3. :nth-last-of-type(3)
を使用します。
その他の参考記事:jquery nth child