CSS selectors level 4

Case-insensitive attribute selector
[attribute='value' i]
Case-sensitive attribute selector
[attribute='value' s]
Blank pseudo-class
:blank
Dir pseudo-class
:dir(ltr)
Lang pseudo-class
:lang(*-en)
Hyperlink pseudo-class
:any-link
Local link pseudo-class
:local-link
Target container pseudo-class
:target-within
Mutability* pseudo-class
:read-only
:read-write
Optionality pseudo-class
:required
:optional
Placeholder pseudo-class
:placeholder-shown
Indeterminate-value
:indeterminate
Range pseudo-classes
:in-range
:out-of-range
:valid
:invalid
User interaction pseudo-classes
:user-invalid
Matches any pseudo-class
:matches(s1, s2)
:is(s1, s2)
Negation pseudo-class
:not(s1, s2)
Specificity Adjustment pseudo-class
:where()
Relational pseudo-class
:has()
Scope pseudo-class
:scope
Child-indexed pseudo-classes
E:nth-child(n [of S]?)
E:nth-last-child(n [of S]?)
Time dimensional pseudo-class
:current
:current(s)
:past
:future
Default option pseudo-class
:default
Grid-Structural
E || F
E:nth-col(n)
E:nth-last-col(n)
Attribute selectors
[attribute^='val']
[attribute$='lue']
[attribute*='alu']

CSS selectors level 3

Target pseudo-class
:target
Negation pseudo-class
:not(s)
General sibling combinator
E ~ F
Enabled and Disabled pseudo-class
:enabled
:disabled
Selected-option
:checked
 
 
 
 
Structural pseudo-classes
:root
:empty
:last-child
:only-child
:first-of-type
:last-of-type
:only-of-type
:nth-child(n)
:nth-last-child(n)
:nth-of-type(n)
:nth-last-of-type(n)

CSS selectors level 2

Universal selector
*
Lang pseudo-class
:lang(en)
User action pseudo-class
:hover
:focus
Structural pseudo-class
:first-child
Child combinator
E > F
Attribute Selectors
[attribute]
[attribute='value']
[attribute~='value']
[attribute|='en']
Adjacent sibling combinator
E + F

CSS selectors level 1

Type selector
E
Descendant selector
E F
Class selector
.class
ID selector
#elID
Link pseudo-class
:link
User action pseudo-class
:active