Den :not()
eiendom i CSS er en negasjon pseudo klasse og aksepterer en enkel velger eller en velger liste som et argument. Det samsvarer med et element som ikke er representert av argumentet. Det godkjente argumentet inneholder kanskje ikke flere velgere eller noen pseudo-elementvelgere.
Evnen til å bruke en liste over velgerne som et argument anses å være eksperimentell, selv om den støttes vokser i skrivende stund, inkludert Safari (siden 2015), Firefox (siden desember 2020) og Chrome (siden januar 2021).
/* the X argument can be replaced with any simple selectors */ :not(X) ( property: value; )
I dette eksemplet har vi en uordnet liste med en enkelt klasse på
Vår CSS ville velge alle
.different
.
/* Style everything but the .different class */ li:not(.different) ( font-size: 3em; )
Du kan også gjøre det samme ved hjelp av pseudoklasser som regnes som en enkel velger.
p:not(:nth-child(2n+1)) ( font-size: 3em; )
Men hvis vi bruker en pseudo-elementvelger som vårt argument, vil det ikke gi det forventede resultatet.
:not(::first-line) ( /* ::first-line is a pseudo element selector and not a simple selector */ color: white; )
Komplekse velgere
/* select all
s that are not descendants of */ p:not(article *) ( )
Visuelt eksempel


:not()
Spesifisitet
Spesifikasjonen til :not
pseudoklassen er spesifisiteten til argumentet. Den :not()
pseudo-klassen ikke legge til velger spesifisitet, i motsetning til andre pseudo-klasser.
Negasjoner kan ikke være nestet, så det :not(:not(… ))
er aldri tillatt. Forfattere bør også merke seg at siden pseudoelementer ikke betraktes som en enkel velger, er de ikke gyldige som et argument for :not(X)
. Vær oppmerksom når du bruker attributtvelgere, da noen ikke støttes bredt som andre. Kjettingvelgere :not
med andre :not
velgere er tillatt.
Nettleserstøtte
Den :not()
pseudo klassen har blitt oppdatert i CSS velgere Nivå 4-spesifikasjonen å tillate en argumentliste. I CSS Selectors Level 3 var det bare i stand til å godta en enkelt enkel velger. Som et resultat er nettleserstøtten litt delt mellom utkast til nivå 3 og nivå 4.
Enkle velgere
DVS | Kant | Firefox | Chrome | Safari | Opera |
---|---|---|---|---|---|
9+ | Alle | Alle | Alle | 12.1+ | Alle |
Android Chrome | Android Firefox | Android-nettleser | iOS Safari | Opera Mobile |
---|---|---|---|---|
Alle | Alle | Alle | Alle | Alle |
Velgerlister
Disse nettleserstøttedataene er fra Caniuse, som har flere detaljer. Et tall indikerer at nettleseren støtter funksjonen i den versjonen og oppover.
Desktop
Chrome | Firefox | DVS | Kant | Safari |
---|---|---|---|---|
88 | 84 | Nei | 88 | 9 |
Mobil / nettbrett
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 81 | 9.0-9.2 |
Mer informasjon
- CSS Selectors Module Level 3
- CSS Selectors nivå 4 spesifikasjon