Moderne CSS har tilføjet funktioner og egenskaber, der erstatter hele kategorier af media-query og JavaScript-tricks. Fremhævelserne:
clamp() — flydende, afgrænsede værdier
h1 { font-size: clamp(, , ); }
Moderne CSS har tilføjet funktioner og egenskaber, der erstatter hele kategorier af media-query og JavaScript-tricks. Fremhævelserne:
h1 { font-size: clamp(, , ); }
clamp(min, preferred, max) giver flydende typografi/mellemrum, som skaleres glat med viewport, men forbliver inden for grænserne — erstatter flere breakpoint-værd af font-size media-queries med en 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 krævet det berygtet padding-bottom: 56.25% trick at holde en responsive 16:9 boks. Nu er det en erklæring — og den reserverer plads (godt for CLS) før billeder indlæses.
.container { width: min(90%, 1200px); } /* whichever is SMALLER → fluid but capped */
.box { padding: max(1rem, 3vw); } /* whichever is LARGER → a minimum floor */
min()/max() vælger den mindre/større værdi, hvilket tillader en egenskab at være responsive uden en media query (f.eks. "90% bred, men aldrig mere end 1200px").
.card { display: grid; grid-template-rows: subgrid; grid-row: span 3; }
subgrid lader et indlejret grid arve sit forældres sporslinjer, således at elementer på tværs af separate kort (titler, indhold, knapper) justeres perfekt på delte rækker — tidligere umuligt uden faste højder.
.flex { display: flex; gap: 1rem; } /* gap now works in flexbox, not just grid */
Disse funktioner eliminerer langvarige tricks: clamp()/min()/max() erstatter stakke af media-queries til flydende størrelse, aspect-ratio erstatter padding-tricket og beskytter layoutskift, og subgrid løser cross-component-justering.
De gør responsive, proportionale layouts dramatisk enklere og mere robuste — moderne CSS gør deklarativt, hvad der før krævede JS eller skrøbelige tricks.