Moderne CSS har lagt til funksjoner og egenskaper som erstatter hele kategorier av media-query- og JavaScript-hacks. De viktigste:
clamp() — flytende, begrensede verdier
h1 { font-size: clamp(, , ); }
Moderne CSS har lagt til funksjoner og egenskaper som erstatter hele kategorier av media-query- og JavaScript-hacks. De viktigste:
h1 { font-size: clamp(, , ); }
clamp(min, preferred, max) gir flytende typografi/avstand som skaleres jevnt med visningsområdet men forblir innenfor grenser — erstatter flere font-size media query's med én linje.
.video { aspect-ratio: 16 / 9; width: 100%; } /* height auto-computed to keep 16:9 */
.avatar { aspect-ratio: 1; } /* perfect square at any width */
Før dette krevde det beryktet padding-bottom: 56.25% hack for å holde en responsiv 16:9-boks. Nå er det én deklarasjon — og den reserverer plass (bra for CLS) før bilder lastes.
.container { width: min(90%, 1200px); } /* whichever is SMALLER → fluid but capped */
.box { padding: max(1rem, 3vw); } /* whichever is LARGER → a minimum floor */
min()/max() velger den mindre/større verdien, slik at én egenskap kan være responsiv uten media query (f.eks. "90% bred, men aldri mer enn 1200px").
.card { display: grid; grid-template-rows: subgrid; grid-row: span 3; }
subgrid lar et nestet rutenett arve sporlinjene til sin forelder, slik at elementer på separate kort (titler, kropper, knapper) justeres perfekt på delte rader — tidligere umulig uten faste høyder.
.flex { display: flex; gap: 1rem; } /* gap now works in flexbox, not just grid */
Disse funksjonene eliminerer langvarige hacks: clamp()/min()/max() erstatter stabler av media query's for flytende størrelse, aspect-ratio erstatter padding-hacken og beskytter mot layoutendring, og subgrid løser justering på tvers av komponenter.
De gjør responsive, proporsjonal layout dramatisk enklere og mer robust — moderne CSS gjør deklarativt det som tidligere krevde JS eller skjøre triks.