Heim  >  Artikel  >  Web-Frontend  >  In welche Richtung lesen Selector Engines genau?

In welche Richtung lesen Selector Engines genau?

Barbara Streisand
Barbara StreisandOriginal
2024-10-23 22:39:30867Durchsuche

Which Direction Do Selector Engines Read, Exactly?

„In welche Richtung lesen Selektor-Engines genau?“

Die gängige Meinung besagt, dass CSS-Selektor-Engines üblicherweise von rechts nach links lesen . Die genaue Richtung der Auswertung kann jedoch je nach Browser und Implementierung variieren.

Typischerweise werten Browser Selektoren von rechts nach links aus, um durch Kombinatoren zu navigieren. Im Selektorbereich > div.second > div.third prüft die Engine, ob ein Element div.third ist, bevor sie prüft, ob sein übergeordnetes Element div.second und weiter oben in der Hierarchie ist.

Bezüglich des Leistungsvergleichs zwischen .name und div.name, der genauen Reihenfolge Die Auswertung kann je nach Browser schwanken und stark variieren. Sogar die theoretische Leistung hängt größtenteils von der Implementierung ab.

Trotz der Rechts-nach-Links-Auswertung über Kombinatoren hinweg ist es unwahrscheinlich, dass sich diese Reihenfolge auf einfache Selektorebenen innerhalb eines zusammengesetzten Selektors erstreckt. Beispielsweise gibt es im Selektor div:hover[data-foo="bar"].name:nth-child(5)::after keine festgelegte Garantie dafür, dass die Kriterien streng von rechts nach links überprüft werden .

Stattdessen können bestimmte Arten einfacher Selektoren aus Leistungsgründen priorisiert werden. Beispielsweise werden ID-Selektoren im Allgemeinen zuerst behandelt. Unabhängig davon, ob ein Selektor als div#foo.bar:first-child oder div.bar:first-child#foo geschrieben ist, wertet Gecko (von Firefox verwendet) zuerst die ID und die Klasse aus, unabhängig von ihrer Position.

Letztendlich ist es schwierig vorherzusagen, welcher Selektor in einem bestimmten Kontext schneller funktioniert. Die Leistung kann je nach Dokumentstruktur, Implementierung und sogar zwischen verschiedenen Browsern unterschiedlich sein.

Das obige ist der detaillierte Inhalt vonIn welche Richtung lesen Selector Engines genau?. 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