目次
段落一
段落二
段落三
段落四
段落五
星期一
Tuesday
Paragraph 3
ホームページ ウェブフロントエンド CSSチュートリアル CSS3 疑似クラス セレクター nth-of-type と nth-child の使用法とそれらの違いを分析する

CSS3 疑似クラス セレクター nth-of-type と nth-child の使用法とそれらの違いを分析する

Sep 11, 2018 am 10:26 AM

仕事では、CSS でセレクターを使用することがよくあります。セレクターには、ID セレクター、クラス セレクター、タグ セレクター、疑似クラス セレクターなど、さまざまな種類があります。そこで、今日は nth-child が何をするのかに焦点を当てます。擬似クラス セレクターの意味、nth-child の使用方法、および nth-of-type の違い これらは両方とも CSS3 の擬似クラス セレクターであり、多くの人が似た意味を持つと考えていますが、違います。次に、CSS3 の nth-of-type と nth-child の使用法とそれらの違いについて説明します。

1. nth-child( ) と nth-of-type( ) の定義と使用法

nth-child(n): 親要素内の n 番目の子要素と一致します 要素の型に制限はありません。 。
nth-of-type(n): 同じ型の n 番目の兄弟要素と一致します。
n には、数値、キーワード、または数式を指定できます。例: nth-child(奇数) 奇数、nth-child(even) 偶数

nth-child と nth-of-type の違いは、要素の検索方法です。前者は兄弟要素間で絶対位置の要素を探すものであり、後者は同じ型の要素間で絶対位置の要素を探すものである。類似点は、どちらも要素を検索し、それを前のセレクターと照合する点です。ここでの照合方法は同じです。
少し下に拡張して、前のセレクターがどのように変化しても、最終的には要素が最初に検索され、その後、前のセレクターと一致するという検索方法を明確にします。これは、セレクターが検索方法とは何の関係もないことを意味します。さまざまな組み合わせで混乱しないように、この点を明確にしてください。

この定義を見ても、その違いがよくわからないかもしれません。次に、コードと図を通して少しずつ区別していきます。

2. nth-of-type と nth-child の違いを説明する例を示します

1. 最初の div に 5 つの P タグを与え、2 番目の div に 5 つの H5 タグを与えます。 nth-of-type(2)、結果が同じかどうかを確認します。それらはすべて 2 番目の色の変更です。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

<style type="text/css">

   p:nth-child(2){color: red ;}

   h5:nth-of-type(2){color: blue;}

 </style>

 <body>

  <div>

   <p>星期一</p>

   <p>星期二</p>

   <p>星期三</p>

   <p>星期四</p>

   <p>星期五</p>

  </div>

  <div>

   <h5 id="段落一">段落一</h5>

   <h5 id="段落二">段落二</h5>

   <h5 id="段落三">段落三</h5>

   <h5 id="段落四">段落四</h5>

   <h5 id="段落五">段落五</h5>  

  </div>

 </body>

ログイン後にコピー

レンダリング:

CSS3 疑似クラス セレクター nth-of-type と nth-child の使用法とそれらの違いを分析する

2. 次に、CSS スタイルは変更せずに、HTML コードにいくつかの変更を加えて、見た目を変えてみましょう。最初の p 要素と最初の h5 要素を h4 に変更しました。コードは次のとおりです。段落 3 の色が変わりました。 h5:nth-of-type(2) は、2 番目の h5 type 要素 (段落 3) を探しています。

3. HTML コードの変更を続けます。最初の p 要素と最初の h5 要素を復元し、2 番目の p 要素と 2 番目の h5 要素を h4 に変更すると、結果は変わりません。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<div>

   <h4 id="星期一">星期一</h4>

   <p>星期二</p>

   <p>星期三</p>

   <p>星期四</p>

   <p>星期五</p>

  </div>

  <div>

   <h4 id="段落一">段落一</h4>

   <h5 id="段落二">段落二</h5>

   <h5 id="段落三">段落三</h5>

   <h5 id="段落四">段落四</h5>

   <h5 id="段落五">段落五</h5>  

  </div>

ログイン後にコピー

レンダリング: CSS3 疑似クラス セレクター nth-of-type と nth-child の使用法とそれらの違いを分析する

その結果、nth-child には効果がなく、nth-of-type が段落 3 を強調表示していることがわかります。

これはなぜですか?

CSS3 疑似クラス セレクター nth-of-type と nth-child の使用法とそれらの違いを分析する

nth-child は、2 番目にランクされている限り、その要素が何であっても、多数の兄弟要素の中から 2 番目の要素を見つけます。ここで前者の div は

Tuesday

を見つけ、後者の div は

Paragraph 2

を見つけます。見つかった後、前のセレクターと照合され、一致した場合にはスタイルが適用されます。前のセレクターは p で、要素が p 型である必要がありますが、ここではすべて h4 であり、一致せず、このスタイルは両方の要素に適用されません。

nth-of-type は、同じ HTML タグ タイプを持つ多数の兄弟要素の中から 2 番目にランク付けされた要素を検索します。最初の div では、

Wednesday

は、p タイプの 2 番目の要素であり、後の div では、
Paragraph 3
は、h5 タイプの 2 番目の要素です。 。 要素。見つかった後、前のセレクターと照合され、一致した場合にはスタイルが適用されます。前のセレクターは h5 なので、後の div の
Paragraph 3
要素のみにスタイルが適用されますが、前の div の

Tuesday

にはスタイルが適用されません。 要約: 上記では、nth-of-type と nth-child の違いを詳しく紹介しています。お役に立てれば幸いです。


以上がCSS3 疑似クラス セレクター nth-of-type と nth-child の使用法とそれらの違いを分析するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

CSSでのホバーとはどういう意味ですか CSSでのホバーとはどういう意味ですか Feb 22, 2024 pm 01:24 PM

CSSでのホバーとはどういう意味ですか

CSSでliタグの前のドットを削除する方法 CSSでliタグの前のドットを削除する方法 Apr 28, 2024 pm 12:36 PM

CSSでliタグの前のドットを削除する方法

使用方法:nth-child(-n+5) 擬似クラス セレクターを使用して、位置が 5 以下の子要素の CSS スタイルを選択します。 使用方法:nth-child(-n+5) 擬似クラス セレクターを使用して、位置が 5 以下の子要素の CSS スタイルを選択します。 Nov 20, 2023 am 11:52 AM

使用方法:nth-child(-n+5) 擬似クラス セレクターを使用して、位置が 5 以下の子要素の CSS スタイルを選択します。

CSS での content プロパティの使用 CSS での content プロパティの使用 Feb 19, 2024 am 10:56 AM

CSS での content プロパティの使用

CSS で :: は何を意味しますか CSS で :: は何を意味しますか Apr 28, 2024 pm 03:45 PM

CSS で :: は何を意味しますか

n番目の子とは何ですか? n番目の子とは何ですか? Aug 04, 2023 am 11:00 AM

n番目の子とは何ですか?

CSSでホバーを使う方法 CSSでホバーを使う方法 Feb 23, 2024 pm 12:06 PM

CSSでホバーを使う方法

:nth-last-child(2) 擬似クラス セレクターを使用して、最後から 2 番目の子要素のスタイルを選択します。 :nth-last-child(2) 擬似クラス セレクターを使用して、最後から 2 番目の子要素のスタイルを選択します。 Nov 20, 2023 am 11:22 AM

:nth-last-child(2) 擬似クラス セレクターを使用して、最後から 2 番目の子要素のスタイルを選択します。

See all articles