Heim > Web-Frontend > CSS-Tutorial > Hauptteil

Wie kann man in CSS das n-te Kind über mehrere Eltern hinweg ansprechen?

Barbara Streisand
Freigeben: 2024-10-23 22:01:02
Original
401 Leute haben es durchsucht

How to Target nth-child Across Multiple Parents in CSS?

CSS: Ausrichtung auf das n-te Kind über mehrere Eltern hinweg

Problem

Bedenken Sie die folgende HTML-Struktur:

<code class="html"><div class="foo">
  <ul>
    <li>one</li>
    <li>two</li>
  </ul>
  <ul>
    <li>three</li>
  </ul>
  <ul>
    <li>four</li>
  </ul>
</div></code>
Nach dem Login kopieren

Die Ziel ist es, die Listenelemente „eins“ und „drei“ in Rot zu gestalten. Verwenden Sie jedoch den CSS-Selektor:

<code class="css">.foo li:nth-child(1),
.foo li:nth-child(3)</code>
Nach dem Login kopieren

formatiert stattdessen das erste untergeordnete Element jeder UL.

Lösung

Nur ​​CSS-Ansatz:

Leider ist es mit CSS allein nicht möglich, n-te Kinder über mehrere Eltern hinweg auszuwählen. Weder :nth-child() noch Geschwisterkombinatoren erlauben eine solche Auswahl.

Javascript- oder DOM-Manipulation:

Um ein solches Targeting zu erreichen, können Sie auf Javascript oder DOM zurückgreifen Manipulationstechniken. Zum Beispiel mit jQuery:

<code class="javascript">$('.foo li:eq(0), .foo li:eq(2)').css('color', 'red');</code>
Nach dem Login kopieren

Klassen- oder ID-Markierung:

Alternativ können Sie die Ziellistenelemente explizit mit Klassen oder IDs markieren. Zum Beispiel:

<code class="html"><div class="foo">
  <ul>
    <li class="target">one</li>
    <li>two</li>
  </ul>
  <ul>
    <li class="target">three</li>
  </ul>
  <ul>
    <li>four</li>
  </ul>
</div></code>
Nach dem Login kopieren

Dann formatieren Sie es mit den markierten Klassen oder IDs:

<code class="css">.foo .target {
  color: red;
}</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann man in CSS das n-te Kind über mehrere Eltern hinweg ansprechen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!