Heim  >  Artikel  >  Web-Frontend  >  Beeinflusst der Universal Selector (*) Pseudoelemente wie :before und :after?

Beeinflusst der Universal Selector (*) Pseudoelemente wie :before und :after?

Barbara Streisand
Barbara StreisandOriginal
2024-11-07 02:05:03707Durchsuche

Does the Universal Selector (*) Affect Pseudo-Elements Like :before and :after?

Universeller Selektor (*) und Pseudoelemente (:before, :after)

Erweitert der universelle Selektor (*) seinen Einfluss? zu Pseudoelementen wie :before und :after? Zum Beispiel bei der Verwendung von:

* { box-sizing: border-box; }

Wirkt es sich automatisch auf Pseudoelemente aus oder ist es notwendig, explizit zu deklarieren:

*, *:before, *:after { box-sizing: border-box; }

Entgegen der Intuition hat der universelle Selektor keinen direkten Einfluss Pseudoelemente (abgesehen von der indirekten Vererbung). Dies liegt daran, dass :before und :after von tatsächlichen Elementen getrennte Entitäten sind und durch Abstraktionen dargestellt werden.

Einfache Selektoren wie * können nur auf tatsächliche Elemente abzielen, nicht auf Pseudoelemente. Um :before und :after zu formatieren, müssen Sie sie explizit in Ihren Selektor einschließen.

Der Grund dafür, dass bei Ihnen möglicherweise keine Probleme aufgetreten sind, obwohl Sie nur * verwendet haben, kann sein, dass Pseudoelemente standardmäßig die Inline-Anzeige verwenden, was nicht betroffen ist nach Boxgröße.

Denken Sie daran, dass bei der Verwendung mehrerer einfacher Selektoren das Einschließen von * aus Gründen der Übersichtlichkeit optional ist. Während die aktuelle Selectors-Spezifikation außerdem Doppelpunkte zur Kennzeichnung von Pseudoelementen verwendet, unterstützen ältere Browser die Einzelpunkt-Notation für das Zurücksetzen der Boxgröße.

Obwohl :before, :after Stile auf anwendet Pseudoelemente aller Elemente werden erst generiert, wenn Sie die Content-Eigenschaft deklarieren. Dies stellt keine Leistungsbedenken dar.

Das obige ist der detaillierte Inhalt vonBeeinflusst der Universal Selector (*) Pseudoelemente wie :before und :after?. 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