Heim >Web-Frontend >CSS-Tutorial >Was ist der Unterschied zwischen den CSS-Selektoren „:first-child' und „:first-of-type'?

Was ist der Unterschied zwischen den CSS-Selektoren „:first-child' und „:first-of-type'?

Susan Sarandon
Susan SarandonOriginal
2024-12-19 09:29:11765Durchsuche

What's the Difference Between CSS's `:first-child` and `:first-of-type` Selectors?

Der subtile Unterschied zwischen :first-child und :first-of-type

Verstehen der Nuance zwischen :first-child und :first -of-type kann im CSS-Stil von entscheidender Bedeutung sein. Trotz ihrer ähnlich klingenden Selektoren liefern diese beiden unterschiedliche Ergebnisse.

Eltern-Kind-Beziehung: Ein genauerer Blick

Jedes Element innerhalb eines übergeordneten Elements kann mehrere untergeordnete Elemente haben . Von diesen Kindern kann nur eines die Auszeichnung für sich beanspruchen, das erste Kind zu sein. Dieses exklusive Merkmal wird von :first-child erfasst:

<div class="parent">
  <div>Child</div> <!-- :first-child -->
  <div>Child</div>
  <div>Child</div>
  <div>Child</div>
</div>

The Power of :first-of-type

Wobei :first-child sich auf die Identifizierung des konzentriert Das erste untergeordnete Element von :first-of-type hat einen spezifischeren Zweck: Es zielt auf das erste Element eines bestimmten Typs ab, unabhängig von seiner Platzierung als untergeordnetes Element. Stellen Sie sich ein Szenario vor, in dem der fragliche Typ div ist:

<div class="parent">
  <div>Child</div> <!-- div:first-child, div:first-of-type -->
  <div>Child</div>
  <div>Child</div>
  <div>Child</div>
</div>

In diesem Beispiel identifizieren sowohl :first-child als auch :first-of-type dasselbe Element, da es sowohl das erste als auch das erste untergeordnete Element ist div. Wenn wir jedoch ein h1-Element als erstes Kind einführen:

<div class="parent">
  <h1>Child</h1> <!-- h1:first-child, h1:first-of-type -->
  <div>Child</div> <!-- div:nth-child(2), div:first-of-type -->
  <div>Child</div>
  <div>Child</div>
</div>

Das h1 erfüllt aufgrund seines First-Child-Status die :first-child-Anforderung. Allerdings ist es nicht mehr die erste Div. Folglich wird das erste Div zur :first-of-type-Übereinstimmung für div.

Key Takeaway

:first-child lokalisiert das erste Kind, wohingegen :first- of-type findet das erste Element eines bestimmten Typs, unabhängig von seiner Position als untergeordnetes Element. Diese Unterscheidung ist entscheidend, wenn es darum geht, bestimmte Elemente basierend auf ihrer Geburtsreihenfolge und ihrem inhärenten Typ anzusprechen.

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen den CSS-Selektoren „:first-child' und „:first-of-type'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn