1. CSS :any-link selector

    The `:any-link` CSS pseudo-class matches all elements that match `:link` or `:visited`

  2. Case-insensitive CSS attribute selectors

    Including an `i` before the `]` in a CSS attribute selector causes the attribute value to be matched in an ASCII-case-insensitive manner. For example, `[b="xyz" i]` would match both `<a b="xyz">` and `<a b="XYZ">`.

  3. ::first-letter CSS pseudo-element selector

    CSS pseudo-element that allows styling only the first "letter" of text within an element. Useful for implementing initial caps or drop caps styling.

  4. CSS Nesting

    CSS nesting provides the ability to nest one style rule inside another, with the selector of the child rule relative to the selector of the parent rule. Similar behavior previously required a CSS pre-processor.

  5. selector list argument of :nth-child and :nth-last-child CSS pseudo-classes

    The newest versions of `:nth-child()` and `:nth-last-child()` accept an optional `of S` clause which filters the children to only those which match the selector list `S`. For example, `:nth-child(1 of .foo)` selects the first child among the children that have the `foo` class (ignoring any non-`foo` children which precede that child). Similar to `:nth-of-type`, but for arbitrary selectors instead of only type selectors.

  6. CSS :read-only and :read-write selectors

    :read-only and :read-write pseudo-classes to match elements which are considered user-alterable

  7. CSS 2.1 selectors

    Basic CSS selectors including: `*` (universal selector), `>` (child selector), `:first-child`, `:link`, `:visited`, `:active`, `:hover`, `:focus`, `:lang()`, `+` (adjacent sibling selector), `[attr]`, `[attr="val"]`, `[attr~="val"]`, `[attr|="bar"]`, `.foo` (class selector), `#foo` (id selector)

  8. CSS3 selectors

    Advanced element selection using selectors including: `[foo^="bar"]`, `[foo$="bar"]`, `[foo*="bar"]`, `:root`, `:nth-child()`, `:nth-last-child()`, `:nth-of-type()`, `:nth-last-of-type()`, `:last-child`, `:first-of-type`, `:last-of-type`, `:only-child`, `:only-of-type`, `:empty`, `:target`, `:enabled`, `:disabled`, `:checked`, `:not()`, `~` (general sibling)

  9. css selector: `:active`

  10. css selector: `:autofill`

  11. css selector: `::backdrop`

  12. css selector: `:buffering`

  13. css selector: `:checked`

  14. css selector: `:closed`

  15. css selector: `::column`

  16. css selector: `::cue`

  17. css selector: `:defined`

  18. css selector: `:disabled`

  19. css selector: `:empty`

  20. css selector: `:enabled`

  21. css selector: `:focus`

  22. css selector: `:future`

  23. css selector: `:heading`

  24. css selector: `:heading()`

  25. css selector: `:host`

  26. css selector: `:host()`

  27. css selector: `:hover`

  28. css selector: `:in-range`

  29. css selector: `:invalid`

  30. css selector: `:lang()`

  31. css selector: `:link`

  32. css selector: `:modal`

  33. css selector: `:muted`

  34. css selector: `:open`

  35. css selector: `::part`

  36. css selector: `:past`

  37. css selector: `:paused`

  38. css selector: `::picker()`

  39. css selector: `:playing`

  40. css selector: `:required`

  41. css selector: `:root`

  42. css selector: `:scope`

  43. css selector: `:seeking`

  44. css selector: `::slotted`

  45. css selector: `:stalled`

  46. css selector: `:target`

  47. css selector: target-after

  48. css selector: `:valid`

  49. css selector: `:visited`

  50. css selector: `:where()`