CSS/Selektoren/has()
Aus SELFHTML-Wiki
CSS | Selektoren(Weitergeleitet von CSS/Selektoren/has)
Der has()-Selektor ist eine Pseudoklasse und dient dazu, ein Element nur dann zu selektieren, wenn es Nachfahren-Elemente bzw. Geschwister-Elemente besitzt, auf die einer der innerhalb von :has()
angegebenen relativen Selektoren zutrifft.
- Syntax
:has(selektorliste)
Beispiel
<style>
ol > li:only-child {
border: thin solid red;
}
ol:has(> li:only-child) {
border: thin solid blue;
}
</style>
<!-- später dann im Dokument -->
<ol>
<li>Hallo Selfhtml</li>
</ol>
Beachten Sie:
:has()
ist seit Mitte 2022 in vielen Browsern, seit Dezember 2023 auch im Firefox verfügbar.
Siehe auch
- Selektoren in CSS
- Logische Pseudoklassen
Eltern nach Kindern stylen mit :has()/wiki/Selektoren_in_CSS/Logische_Pseudoklassen#Eltern_nach_Kindern_stylen_mit_:has.28.29
- Logische Pseudoklassen
Weblinks
- W3C: Selectors Level 4: The Relational Pseudo-class :has()
- MDN: has
- caniuse: :has() CSS relational pseudo-class
- css-tricks: Did You Know About the :has CSS Selector? von Robin Rendle, 17.03.2021
- css-tricks: Meet `:has`, A Native CSS Parent Selector
- Browser-Support: caniuse.com
CSS-Selektoren
- dynamische Pseudoklassen
- :active
- :any-link
- :autofill
- :buffering
- :checked
- :default
- :defined
- :disabled
- :enabled
- :focus
- :focus-visible
- :focus-within
- :fullscreen
- :has()
- :hover
- :in-range
- :indeterminate
- :invalid
- :is()
- :lang()
- :link
- :modal
- :muted
- :not()
- :open
- :optional
- :out-of-range
- :picture-in-picture
- :placeholder-shown
- :popover-open
- :read-only
- :read-write
- :required
- :target
- :target-current
- :user-invalid
- :user-valid
- :valid
- :visited
- :where()
- einfache Selektoren
- Kombinatoren
- Pseudoelemente
- strukturelle Pseudoklassen
li
-Elemente, die das einzige Kind einer<ol>
-Liste sind. Dieborder
-Eigenschaft wird für das Listenelement gesetzt, nicht für die Liste selbst, d.h. der Rahmen enthält denpadding
-Bereich der Liste nicht.
Im Ergebnis gibt es also einen blauen Rahmen und einen etwas eingerückten roten Rahmen.Die zweite Regel hingegen selektiert
<ol>
-Elemente, die ein<li>
-Element als einziges Kind haben. Die hier gesetzteborder
-Eigenschaft umfasst die vollständige Liste, auch denpadding
-Bereich.