Rolf B: CSS Quiz

Beitrag lesen

Hallo Bertie,

es gibt ein paar Unterschiede.

h1:hover, h1:flying { color: red; }

:is(h2:hover, h2:flying) { color: green; }
  1. :is() ist fehlerverzeihend. Die erste Regel wird komplett verworfen, weil es :flying nicht gibt. Die zweite Regel hingegen wird h2 Überschriften beim Hover erröten lassen, weil nur h2:flying ignoriert wird.

  2. :is() bildet das Maximum der enthaltenen Selektoren. :is(#foo, p) hat die Spezifität eines ID-Selektors, selbst wenn nur ein schnöseliges p ohne jede ID gestyled wird und id="foo" im ganzen Dokument nicht vorhanden ist. Willst Du das nicht, nimm :where(). Das schüttet die Spezifität allerdings gleich ganz in die Tonne.

Rolf

--
sumpsi - posui - obstruxi