Inhaltsverzeichnis
Wie man verwendet :has() in CSS
Häufige Anwendungsfälle für :has()
Browser -Unterstützung und Überlegungen
Heim Web-Frontend CSS-Tutorial Beschreiben Sie das `: Has ()` Pseudoklasse (übergeordnete Selektor)

Beschreiben Sie das `: Has ()` Pseudoklasse (übergeordnete Selektor)

Jul 15, 2025 am 12:32 AM
css

Die: Has () Pseudo-Klasse in CSS ermöglicht es, ein übergeordnetes Element basierend auf ihren untergeordneten Elementen zu zielen. Es funktioniert mit dem Syntax-Elternteil: hat (Child-Selector), um Stile bedingt anzuwenden. Zum Beispiel wendet Div: Has (IMG) Stile auf ein DIV an, das ein Bild enthält. Mehrere Selektoren können mit Kommas wie Div: Has (IMG, P.Special) verwendet werden. Zu den häufigen Anwendungsfällen gehören Styling -Container, Feedback für Formularvalidierung und die Anzeige der Menüelemente mit Untermenüs. Die Browserunterstützung ist in modernen Browsern wie Chrome, Safari und Edge erhältlich, obwohl Firefox Ende 2024 keine Unterstützung gibt. Zu den Überlegungen gehören die Auswirkungen auf die Leistung, das nicht-dynamische Verhalten und die Notwendigkeit von Fallbacks in nicht unterstützten Umgebungen.

Beschreiben Sie das `: Has ()` Pseudoklasse (übergeordnete Selektor)

Die :has() Pseudo-Klasse ist ein leistungsstarker CSS-Selektor, mit dem Sie auf ein übergeordnetes Element abzielen können, das auf dem Vorhandensein spezifischer untergeordneter Elemente oder Bedingungen darin basiert. Vorher :has() wurde eingeführt, es gab keinen nativen Weg in CSS, ein Elternteil aus seinen Kindern auszuwählen - Entwickler mussten sich auf JavaScript verlassen oder manuell zusätzliche Klassen hinzufügen. Jetzt, mit :has() , wird dies mit nur CSS möglich.

Beschreiben Sie das `: Has ()` Pseudoklasse (übergeordnete Selektor)

Wie man verwendet :has() in CSS

:has() arbeitet, indem sie einen Selektor als Argument nimmt und ein beliebiges Element entspricht, das mindestens ein passendes Element darin enthält. Die Syntax sieht aus:

 Elternteil: Has (Child-Selector) {
  / * Styles */
}

Wenn Sie beispielsweise nur dann einen <div> stylen möchten, wenn es ein <img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/175251076578590.jpeg" class="lazy" alt="Beschreiben Sie das `: Has ()` Pseudoklasse (übergeordnete Selektor)" > enthält, können Sie schreiben:

Beschreiben Sie das `: Has ()` Pseudoklasse (übergeordnete Selektor)
 div: hat (img) {
  Grenze: 2px solide grün;
}

Dadurch wird der Rand nur auf die div angewendet, die irgendwo in ihnen direkt ein Bild -Tag enthalten.

Sie können auch mehrere Selektoren im Inneren ketten :has() mit Kommas, wie:

Beschreiben Sie das `: Has ()` Pseudoklasse (übergeordnete Selektor)
 div: hat (img, p.Special) {
  Hintergrundfarbe: #f0f0f0;
}

Diese Regel passt zu jedem div , das sowohl eine img als auch ein p mit special hat.


Häufige Anwendungsfälle für :has()

  • Styling Container bedingt : beispielsweise auf ein Kartenlayout anwenden, wenn es ein Video enthält.
  • Feedback der Formularvalidierung : Hervorhebung einer Formgruppe, wenn eine erforderliche Eingabe ungültig ist.
  • Menüelemente mit Untermenüs : Anwenden von Pfeilen oder Indikatoren nur auf Menüelemente mit verschachtelten Listen.

Hier ist ein Beispiel in der Praxis:

 li: hat (ul) {
  Position: Relativ;
  Padding-Right: 20px;
}

li: hat (ul) :: nach {
  Inhalt: &#39;▾&#39;;
  Position: absolut;
  Rechts: 5px;
}

Dies fügt jedem Listenelement einen Dropdown -Indikator hinzu, der ein Untermenü enthält ( <ul></ul> ), wodurch Ihre Navigations -Benutzeroberfläche intuitiver wird, ohne zusätzliches Markup hinzuzufügen.


Browser -Unterstützung und Überlegungen

Ab sofort wird :has() in den meisten modernen Browsern wie Chrome (V105), Safari (V15.4) und Edge (V106) unterstützt. Die Unterstützung von Firefox ist Ende 2024 noch anhängig. Daher ist es wichtig, die Kompatibilität zu überprüfen, wenn Sie auf eine breite Zielgruppe abzielen.

Denken Sie auch daran:

  • :has() kann die Leistung beeinflussen, wenn sie übermäßig oder mit komplexen Selektoren verwendet werden.
  • Es ist nicht dynamisch auf die gleiche Weise, wie es JavaScript ist - es bewertet nur zur Renderzeit.
  • Vermeiden Sie es, es in kritischen Layouts zu verwenden, es sei denn, für nicht unterstützte Browser sind Fallbacks vorhanden.

Wenn Sie es in der Produktion verwenden, sollten Sie die Feature -Erkennung oder progressive Verbesserungsstrategien in Betracht ziehen, um sicherzustellen, dass Ihre Website überall verwendet bleibt.


Grundsätzlich :has() gibt CSS ein langes Langzeitwerkzeug für das bedingte Styling basierend auf der Struktur. Obwohl es noch nicht allgemein unterstützt wird, lohnt es sich auf jeden Fall, mit zu experimentieren und für die zukünftige Verwendung zu planen.

Das obige ist der detaillierte Inhalt vonBeschreiben Sie das `: Has ()` Pseudoklasse (übergeordnete 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

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP-Tutorial
1510
276
Wie benutze ich das CSS-Backdrop-Filter-Eigenschaft? Wie benutze ich das CSS-Backdrop-Filter-Eigenschaft? Aug 02, 2025 pm 12:11 PM

Backdrop-Filter wird verwendet, um visuelle Effekte auf den Inhalt der Elemente anzuwenden. 1. Verwenden Sie Backdrop-Filter: Blur (10px) und andere Syntax, um den frostierten Glasffekt zu erzielen. 2. unterstützt mehrere Filterfunktionen wie Unschärfe, Helligkeit, Kontrast usw. und kann überlagert werden. 3. Es wird häufig in der Glaskartendesign verwendet, und es ist notwendig, sicherzustellen, dass sich die Elemente mit dem Hintergrund überschneiden. 4. Moderne Browser haben eine gute Unterstützung, und @Supports können verwendet werden, um Downgrade -Lösungen bereitzustellen. 5. Vermeiden Sie übermäßige Unschärfewerte und häufiges Neuzuziehen, um die Leistung zu optimieren. Dieses Attribut wirkt sich nur aus, wenn sich hinter den Elementen Inhalte befinden.

Was ist die CSS-Aspekt-Verhältnis-Eigenschaft und wie kann ich sie verwenden? Was ist die CSS-Aspekt-Verhältnis-Eigenschaft und wie kann ich sie verwenden? Aug 04, 2025 pm 04:38 PM

Thespect-ratiocsSpropertydefinästhespen-to-hweigthtratioofanelemente, sicherzustellen, dass die Verbreitung von Verantwortung durchgesetzt wird

Was sind die Apps für virtuelle Währungshandel? _Die Top Ten empfohlene offizielle Apps Virtual Currency Trading Apps im Jahr 2025 Was sind die Apps für virtuelle Währungshandel? _Die Top Ten empfohlene offizielle Apps Virtual Currency Trading Apps im Jahr 2025 Aug 08, 2025 pm 06:42 PM

1. Binance ist bekannt für sein riesiges Transaktionsvolumen und die reichhaltigen Handelspaare. Es bietet diversifizierte Handelsmodelle und perfekte Ökosysteme. Es gewährleistet auch die Sicherheit von Benutzeranlagen über SAFU -Fonds und mehrere Sicherheitstechnologien und erhält den konformen Vorgängen von großer Bedeutung. 2. OKX Ouyi bietet eine breite Palette von Handelsdiensten für digitale Asset und einheitliche Handelskonto -Modelle, bereitet das Web3 -Feld aktiv bereit und verbessert die Sicherheit und Erfahrung der Transaktion durch strenge Risikokontrolle und Benutzerausbildung. 3.. Gate.io Sesam öffnet die Tür und verfügt über eine gute Währungsgeschwindigkeit und eine reichhaltige Währung, bietet diversifizierte Handelsinstrumente und Wertschöpfungsdienste, nimmt mehrere Sicherheitsüberprüfungsmechanismen an und hält sich an die Transparenz von Asset-Reserven zur Verbesserung des Benutzervertrauens. V.

Wie benutze ich die CSS: leere Pseudoklasse? Wie benutze ich die CSS: leere Pseudoklasse? Aug 05, 2025 am 09:48 AM

Die: Leerepseudo-KlasseSelectSselementsWithnochildrenorContent, einschließlich Spacesorcomponenten, SoonlyTryEmptyElementslikematchit; 1.itcanhideemptyContainersByusing: leer {display: none;} tocleanuPlayouts; 2.itallowsaddingPlaceLylingsSylingvise :::.

Wie erstelle ich ein CSS-Akkordeon-Menü? Wie erstelle ich ein CSS-Akkordeon-Menü? Aug 03, 2025 pm 01:48 PM

Verwenden Sie versteckte Kontrollkästchen und CSSs: Überprüfte Pseudoklasse in Kombination mit benachbarten Geschwister-Selektoren (), um die Inhaltsanzeige zu steuern. 2. Die HTML -Struktur enthält Eingabe-, Beschriftungs- und Inhaltsdiv für jedes zusammengebrochene Element. 3.. Smooth Expansion/Collapse-Animationen durch Einstellen von MAX-Height-Übergang; V. 5. Verwenden Sie Radiotypen, um den Einzelöffnungsmodus zu implementieren, während das Kontrollkästchen mehrere Öffnungen ermöglicht. Dies ist eine interaktive faltbare Menüimplementierung, die kein JavaScript erfordert und mit modernen Browsern kompatibel ist.

Wie benutze ich CSS-Clip-Pfad für kreative Formen? Wie benutze ich CSS-Clip-Pfad für kreative Formen? Aug 04, 2025 pm 02:55 PM

Verwenden Sie CSSCLIP-Pfad, um nicht-respektuläre Formen im Browser ohne zusätzliche Bilder oder komplexe SVG zu erstellen. 2. Gemeinsame Formfunktionen umfassen Inset (), Circle (), Ellipse () und Polygon (), wobei Polygon () benutzerdefinierte Formen implementiert, indem Koordinatenpunkte definiert werden, die zum Erstellen kreativer Designs wie Dialogblasen geeignet sind; 3.. Clip-Pfad kann durch CSS-Übergang oder Keyframe-Animation dynamische Effekte erzielen, z. B. die Kreiserweiterung während des Schwebes, unterstützt jedoch nur Interform-Animationen desselben Typs und derselben Anzahl von Scheitelpunkten. 4. Achten Sie auf Reaktionsfähigkeit und Zugänglichkeit, um sicherzustellen, dass der Inhalt weiterhin verfügbar ist, wenn sie nicht unterstützt werden. Der Text ist lesbar, vermeiden Sie übermäßiges Anschneiden und steuern Sie die Anzahl der Polygonscheitelpunkte, um die Leistung zu optimieren. Gleichzeitig ist es notwendig, das zu wissen

So verwenden Sie VW- und VH -Einheiten in CSS So verwenden Sie VW- und VH -Einheiten in CSS Aug 07, 2025 pm 11:44 PM

VW- und VH -Einheiten erreichen reaktionsschnelles Design, indem sie Elementgrößen mit Ansichtsfenster und Höhe in Verbindung bringen. 1 VW entspricht 1% der Ansichtsfensterbreite, und 1 VH entspricht 1% der Ansichtsfensterhöhe; häufig im Vollbildbereich, reaktionsschnellen Schriftarten und elastischen Abstand verwendet; 1. Verwenden Sie im Vollbildbereich 100VH oder besser 100DVH, um den Einfluss der Mobile Browser -Adressleiste zu vermeiden. 2. Responsive Schriftarten können mit 5 VW begrenzt und mit einer Klemme (1,5REM, 3VW, 3REM) in Kombination der minimalen und maximalen Größe begrenzt werden. 3. Elastischer Abstand wie Breite: 80VW, Rand: 5VHAUTO, Polsterung: 2VH3VW, kann das Layout anpassungsfähig machen; Achten Sie auf Kompatibilität, Zugänglichkeit und Inhaltskonflikte für mobile Geräte. Es wird empfohlen, zuerst DVH zu verwenden.

So verwenden Sie die Filtereigenschaft in CSS So verwenden Sie die Filtereigenschaft in CSS Aug 11, 2025 pm 05:29 PM

ThecssFilterPropertyAllowsvisualeffects-ähnlich, Helligkeit und GryscaletobeAppliedDirecttoHtmlelements.1) Usethesyntaxfilter: Filterfunktion (Wert) toappyeffects.2) Kombination

See all articles