Modernes CSS hat Funktionen und Eigenschaften hinzugefügt, die ganze Kategorien von Media-Query- und JavaScript-Hacks ersetzen. Die Highlights:
clamp() — fluide, begrenzte Werte
h1 { font-size: clamp(, , ); }
Modernes CSS hat Funktionen und Eigenschaften hinzugefügt, die ganze Kategorien von Media-Query- und JavaScript-Hacks ersetzen. Die Highlights:
h1 { font-size: clamp(, , ); }
clamp(min, preferred, max) bietet fluide Typografie/Abstände, die sich flüssig mit dem Viewport skalieren, aber innerhalb der Grenzen bleiben — ersetzt mehrere Breakpoints voller font-size Media-Queries durch eine Zeile.
.video { aspect-ratio: 16 / 9; width: 100%; } /* height auto-computed to keep 16:9 */
.avatar { aspect-ratio: 1; } /* perfect square at any width */
Früher erforderte es das berüchtigte padding-bottom: 56.25% Hack, um eine responsive 16:9-Box zu halten. Jetzt ist es eine Deklaration — und es reserviert Platz (gut für CLS), bevor Bilder geladen werden.
.container { width: min(90%, 1200px); } /* whichever is SMALLER → fluid but capped */
.box { padding: max(1rem, 3vw); } /* whichever is LARGER → a minimum floor */
min()/max() wählen den kleineren/größeren Wert, wodurch eine Eigenschaft responsiv sein kann, ohne eine Media-Query zu benötigen (z. B. "90% breit, aber nie mehr als 1200px").
.card { display: grid; grid-template-rows: subgrid; grid-row: span 3; }
subgrid ermöglicht einem verschachtelten Grid, die Spurlinien des Elternelements zu erben, sodass Elemente über separate Karten hinweg (Titel, Inhalte, Schaltflächen) perfekt auf gemeinsamen Zeilen ausgerichtet werden — zuvor ohne feste Höhen unmöglich.
.flex { display: flex; gap: 1rem; } /* gap now works in flexbox, not just grid */
Diese Funktionen beseitigen langjährige Hacks: clamp()/min()/max() ersetzen Stapel von Media-Queries für fluide Größenveränderungen, aspect-ratio ersetzt den Padding-Hack und schützt vor Layout-Verschiebungen, und subgrid löst komponentenübergreifende Ausrichtung.
Sie machen responsive, proportionale Layouts dramatisch einfacher und robuster — modernes CSS tut deklarativ, was früher JS oder fragile Tricks erforderte.