Heim > Web-Frontend > CSS-Tutorial > Warum verhält sich der „:not()'-Selektor von jQuery nicht wie „:not()' von CSS?

Warum verhält sich der „:not()'-Selektor von jQuery nicht wie „:not()' von CSS?

Mary-Kate Olsen
Freigeben: 2024-12-30 21:31:19
Original
662 Leute haben es durchsucht

Why Doesn't jQuery's `:not()` Selector Behave Like CSS's `:not()`?

Warum funktioniert der :not()-Selektor von jQuery in CSS nicht?

Der :not()-Selektor von jQuery behauptet zwar, CSS3-kompatibel zu sein, weist jedoch erhebliche Unterschiede in der Funktionalität auf im Vergleich zur in CSS3 definierten Pseudoklasse :not().

Unterschiede in Syntax und Funktionalität:

  • Übergabe mehrerer Selektoren: jQuery ermöglicht die Übergabe einer durch Kommas getrennten Liste von Selektoren an :not(), CSS3 :not() akzeptiert jedoch nur einen einzelnen einfacher Selektor.
  • Kombinieren einfacher Selektoren: jQuery ermöglicht das Kombinieren mehrerer einfacher Selektoren zu einem Verbund Selektoren zur Verwendung mit :not(), während CSS3 dies nicht tut.
  • Kombinatoren verwenden: jQuery unterstützt die Verwendung von Kombinatoren in :not()-Selektoren, während CSS3 dies nicht tut.

Konsequenzen:

Beim Versuch, die jQuery zu verwenden Wenn Sie den Selektor :not() direkt in CSS verwenden, funktioniert er aufgrund dieser Syntax- und Funktionsunterschiede möglicherweise nicht wie vorgesehen. Das in der Frage bereitgestellte Beispiel veranschaulicht dieses Problem.

CSS3-Problemumgehungen:

Um diese Einschränkungen zu umgehen, bietet CSS3 die folgenden Problemumgehungen:

  • Mehrere :not()-Selektoren: Verketten Sie mehrere :not()-Selektoren miteinander, um mehrere einfache zu negieren Selektoren.
  • Zusammengesetzte Selektoren aufteilen: Zusammengesetzte Selektoren in mehrere Negationen aufteilen.
  • Alternative Methoden: Alternative CSS-basierte Methoden verwenden, z. B. Kombinieren Pseudoklassen und Kombinatoren.

Hinweis:

CSS3 wird irgendwann den erweiterten :not()-Selektor unterstützen, der in Selectors 4 definiert ist, was eine umfassendere Funktionalität ermöglicht. Dies ist jedoch noch ein zukünftiger Standard und wird nicht weit verbreitet.

Das obige ist der detaillierte Inhalt vonWarum verhält sich der „:not()'-Selektor von jQuery nicht wie „:not()' von CSS?. 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