Heim > Web-Frontend > CSS-Tutorial > Wie formatiere ich die erste Instanz eines Elementtyps in HTML mithilfe von CSS oder JavaScript?

Wie formatiere ich die erste Instanz eines Elementtyps in HTML mithilfe von CSS oder JavaScript?

Barbara Streisand
Freigeben: 2024-12-09 22:46:19
Original
403 Leute haben es durchsucht

How to Style the First Instance of an Element Type in HTML Using CSS or JavaScript?

Identifizieren der ersten Instanz eines bestimmten Elementtyps in einem gesamten Dokument

Frage:

Wie kann man CSS nutzen? oder JavaScript, um das anfängliche Vorkommen eines bestimmten Elementtyps im gesamten HTML-Dokument gezielt und formatiert zu gestalten, unabhängig von seiner Platzierung im Dokument Struktur?

Antwort:

CSS-basierte Lösung

Leider bietet CSS allein keine Funktionalität, die mit der ersten übereinstimmt Vorkommen eines Elementtyps im gesamten Dokument. Die :first-of-type-Pseudoklasse gilt gemäß CSS-Spezifikationen nur für das erste Geschwister ihres Typs innerhalb seines übergeordneten Elements.

JavaScript-basierte Lösungen

1. :First-of-Type-Emulation

Mit JavaScript können wir diese Funktionalität erreichen, indem wir eine benutzerdefinierte Klasse „First-of-Type“ einführen und die querySelector()-Methode verwenden, um den ersten Abgleich abzurufen Element des gewünschten Typs. Anschließend weisen wir diese benutzerdefinierte Klasse dem abgerufenen Element zu:

document.querySelector('p').className += ' first-of-type';
Nach dem Login kopieren

2. Benutzerdefinierte Matching-Funktion

Wir können auch eine benutzerdefinierte JavaScript-Funktion entwickeln, um das erste Vorkommen eines bestimmten Elementtyps zu identifizieren und zu formatieren:

function nthIndexOfType(element, index) {
  var siblings = element.parentElement.children;
  var count = 1;
  for (var i = 0; i < siblings.length; i++) {
    if (siblings[i].tagName === element.tagName) {
      if (count === index) {
        return siblings[i];
      }
      count++;
    }
  }
  return null;
}

nthIndexOfType(document.querySelector('p'), 1).style.backgroundColor = 'pink';
Nach dem Login kopieren

Diese Funktion akzeptiert zwei Parameter: das Element nach dem wir suchen möchten, und den Index des Vorkommens, auf das wir abzielen möchten. Es durchläuft alle Geschwisterelemente und gibt das erste Element des angegebenen Typs zurück, wobei der gewünschte Stil angewendet wird.

Das obige ist der detaillierte Inhalt vonWie formatiere ich die erste Instanz eines Elementtyps in HTML mithilfe von CSS oder JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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