Het assortiment selectors van CSS is uitgebreid. Leer werken met de nieuwe pseudoklassen :is()
, :where()
en :not()
, maak kennis met :has()
en controleer je focus met :focus-within
en :focus-visible
.
Voor een goed begrip van dit artikel is het handig als je weet wat specificiteit is. Kan je kennis een opfrisser gebruiken, lees dan ook het artikel Specificiteit in CSS, zo werkt het.
De pseudoklassen in het kort
Behalve :has()
worden alle nieuwe pseudoklassen ondersteund door de belangrijke browser.
Tussen de haakjes van :is() en :where() zet je een lijst van selectors. Elke selector die overeenkomt met een element wordt opgemaakt. Alle soorten selectors en combinators zijn toegestaan. Foute selectors worden genegeerd, maar maken niet de complete selector ongeldig. Bij :is()
is de specificiteit gelijk aan de selector met de hoogste specificiteit. Bij :where()
is de specificiteit altijd 0.
Ook :not() krijgt een selectorlijst. Elementen die overeenkomen met een selector in de lijst worden juist niet opgemaakt. De specificiteit is gelijk aan de selector met de hoogste specificiteit.
:has() werkt als een ‘parent selector’. De selectorlijst is een voorwaarde, geen opmaakdoel. Het is erg onzeker of :has()
daadwerkelijk wordt toegevoegd aan de specificatie.
:focus-within maakt het mogelijk om een voorouder op te maken van een element dat de focus kan krijgen.
:focus-visible laat de browser bepalen of het nodig is om de focusopmaak te tonen. Wel bij toetsenbordnavigatie, niet bij muisgebruik.
Lees verder Leer werken met nieuwe pseudoklassen van CSS →
Peter Doolaard is auteur van het Handboek HTML5 en CSS3. Dat geeft een behoorlijk compleet overzicht van wat HTML en CSS te bieden hebben. Hij werkt nu aan een nieuw boek: Websites bouwen met HTML, CSS en JavaScript. Een praktisch doe-boek, met vragen, opdrachten en projecten. En natuurlijk uitleg over HTML-elementen, CSS-eigenschappen en JavaScript-opdrachten. De komende tijd publiceert Computer Creatief artikelen die je een idee geven van wat je van het nieuwe boek kunt verwachten. Bekijk alle boeken van Peter.