Heim > Web-Frontend > CSS-Tutorial > : Has ist ein unversöhnlicher Selektor

: Has ist ein unversöhnlicher Selektor

Jennifer Aniston
Freigeben: 2025-03-09 11:44:13
Original
801 Leute haben es durchsucht

:has is an unforgiving selector

Eine kleine Episode ereignete sich beim Veröffentlichen des CSS :has() -Alektor für das Jahrbuch. Ich habe zunächst :has() als "vergebende" Selektor bezeichnet, was bedeutet, dass alles in seinen Parametern bewertet wird, auch wenn ein oder mehrere der Elemente ungültig sind.

/* 示例:请勿使用!*/
article:has(h2, ul, ::-scoobydoo) { }
Nach dem Login kopieren

Hast du ::-scoobydoo gesehen? Dies ist völlig ungültig. Eine verzeihende Auswahlliste ignoriert den ungültigen Selektor und bewertet den Rest der Elemente wie folgt weiter:

article:has(h2, ul) { }
Nach dem Login kopieren

im Entwurf vor dem 7. Mai 2022 ist :has() tatsächlich ein toleranter Selektor. Nachdem ein Problem gemeldet wurde, änderten sich die Dinge, was besagt, dass seine Toleranz Nature, wenn :has() komplexe Selektoren (z. B. header h2 p) enthält, mit JQuery in Konflikte mit JQuery. W3C hat vor einigen Wochen eine Lösung gefunden, die als "Nichtvergünstigungs" formuliert werden soll. :has()

Also unser vorheriges Beispiel? Die gesamte Auswahlliste ist ungültig, da der ungültige Selektor ungültig ist. Aber die anderen beiden Toleranzauswahlern

und :is() bleiben gleich. :where()

dafür gibt es eine Problemumgehung. Denken Sie daran, dass

und :is() vergeblich sind, auch wenn :where() nicht ist. Dies bedeutet :has() :has(), die Sie verwenden, kann wichtig sein, da die Spezifität von

durch die spezifischsten Elemente in seiner Liste bestimmt wird. Wenn Sie etwas weniger Spezifisches benötigen, verwenden Sie daher am besten
article:has(:where(h2, ul, ::-scoobydoo)) { }
Nach dem Login kopieren
, da es den Spezifitätswert nicht erhöht.

:is() :where() Wir haben einige Beiträge aktualisiert, um die neuesten Informationen widerzuspiegeln. Ich habe viele andere Dinge gesehen, die in freier Wildbahn aktualisiert werden müssen. Dies ist also eine kleine Ankündigung für öffentliche Dienstleistungen für alle, die dasselbe tun müssen.

Das obige ist der detaillierte Inhalt von: Has ist ein unversöhnlicher Selektor. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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