Es gibt in fast jedem Projekt diesen einen Moment: Der Screen ist fertig, alle Inhalte sind da, die Farben stimmen, die Schrift stimmt — und trotzdem sieht das Ganze unruhig aus. Im Review fällt dann der Satz, den alle kennen: „Irgendwas passt da noch nicht." Niemand kann sagen, was.
In neun von zehn Fällen ist es nicht die Farbe und nicht die Schrift. Es ist das Layout. Genauer: Es sind Abstände, die aus dem Bauch kommen, Kanten, die sich um ein paar Pixel verfehlen, und Gruppen, die optisch nicht zusammengehören, obwohl sie inhaltlich zusammengehören.
Layout ist die unauffälligste der drei Grundlagendisziplinen im Interface. Typografie sieht man, Farbe sieht man — ein gutes Raster sieht man nicht, man merkt nur seine Abwesenheit. Genau deshalb wird es beim Aufbau eines Produkts am häufigsten übersprungen: Man fängt mit Komponenten an, nicht mit dem Feld, in dem sie stehen. Und zahlt es später zurück, jedes Mal, wenn ein neuer Screen dazukommt und niemand mehr weiß, ob zwischen Überschrift und Karte nun 20, 24 oder 28 Pixel gehören.
Dieser Artikel handelt davon, wie du dieses Feld aufspannst: Spaltenraster, Abstandsskala, Weißraum, Ausrichtung — und wie aus diesen vier Dingen etwas wird, das ein Team auch in Monat acht noch einhält.
Die meisten Projekte starten mit zwölf Spalten. Nicht, weil zwölf Spalten zum Inhalt passen, sondern weil Bootstrap das vor über zehn Jahren so gemacht hat und seitdem jedes Framework-Template damit kommt.
Zwölf ist eine gute Zahl — sie lässt sich durch 2, 3, 4 und 6 teilen, du kannst also Halbe, Drittel, Viertel und Sechstel bauen, ohne zu rechnen. Aber sie ist kein Naturgesetz. Für eine Marketing-Seite mit Bildstrecken, Teasern und dreispaltigen Featurelisten ist ein Zwölfer-Raster ideal. Für eine Fachanwendung, die im Kern aus Formularmasken und Listen besteht, ist es oft überdimensioniert: Du benutzt nie mehr als drei Aufteilungen, verwaltest aber zwölf Spalten.
In der Kita-Software, an der ich arbeite, besteht die Hälfte aller Screens aus strukturierten Eingabemasken — Beobachtungsbögen, Stammdaten, Auswertungen. Dort trägt ein schlichtes Vierer-Raster mit zwei Zuständen (volle Breite, halbe Breite) mehr als jede feingliedrige Aufteilung. Es ist schneller zu entscheiden, schneller zu bauen und deutlich schwerer falsch zu benutzen.
Bevor du die Spaltenzahl festlegst, sind vier Werte zu klären. Sie hängen zusammen, und keiner davon ist Geschmackssache:
- Maximale Inhaltsbreite: Wie breit darf der Inhalt auf einem großen Monitor werden? Nicht „so breit wie das Fenster" — ab etwa 1.200 bis 1.400 Pixel wird das Auge beim Zeilensprung unzuverlässig, und Bedienelemente driften so weit auseinander, dass zusammengehörige Dinge nicht mehr zusammengehörig wirken.
- Außenabstand: Wie viel Luft bleibt links und rechts vom Inhalt? Auf dem Handy selten unter 16 Pixel, auf dem Desktop gern das Doppelte bis Dreifache — und zwar als eigener Wert, nicht als „was übrig bleibt".
- Rinne zwischen den Spalten: Der Abstand, der zwei Spalten trennt. Er sollte klar kleiner sein als der Abstand zwischen zwei Blöcken untereinander, sonst zerfällt die Zeile.
- Spaltenzahl pro Größenbereich: Vier Spalten auf dem Handy, acht auf dem Tablet, zwölf auf dem Desktop ist eine gängige Staffelung — aber sie folgt dem Inhalt, nicht der Gewohnheit.
Merksatz: Das Raster ist nicht dazu da, dir Freiheit zu nehmen. Es ist dazu da, dir die immer gleichen Entscheidungen abzunehmen, damit du deine Aufmerksamkeit für die Entscheidungen behältst, die wirklich welche sind.
Wenn ich in ein bestehendes Projekt komme und wissen will, wie gesund es ist, schaue ich nicht auf die Komponentenbibliothek. Ich schaue auf die Abstände. Ein Projekt, in dem zwischen zwei Karten mal 16, mal 18, mal 20 und einmal 23 Pixel liegen, hat kein Layout — es hat eine Sammlung von Einzelfällen.
Die Lösung ist unspektakulär und wirkt sofort: eine feste Skala, aus der alle Abstände kommen. Basis 4 oder 8 Pixel, dann in Sprüngen, die nach oben größer werden:
4 — 8 — 12 — 16 — 24 — 32 — 48 — 64 — 96
Warum größere Sprünge nach oben? Weil der Unterschied zwischen 4 und 8 Pixeln sofort sichtbar ist, der zwischen 88 und 96 aber nicht. Eine Skala, die linear in Achterschritten weiterläuft, produziert am oberen Ende Werte, die sich niemand mehr merkt und die im Ergebnis austauschbar sind.

Entscheidend ist, dass die Werte Namen bekommen und über Tokens benutzt werden — space-2, space-4, space-8 oder semantisch space-inline-sm, space-block-lg. Der Name ist der eigentliche Gewinn: Er macht den Abstand besprechbar. „Zwischen Kartentitel und Fließtext gehört der kleine Blockabstand" ist eine Regel, die ein Team einhalten kann. „Da gehören 12 Pixel hin" ist eine Zahl, die beim nächsten Screen wieder verhandelt wird. Das ist derselbe Mechanismus, der auch bei Farbe trägt: Sobald du semantische Rollen statt roher Werte benutzt, wird aus Geschmack ein System — der Aufbau eines solchen Token-Sets ist in kleinen Teams gut zu stemmen, solange er klein anfängt.
Zwei Regeln, die in der Praxis den meisten Ärger verhindern:
- Abstände haben eine Richtung. Lege fest, dass Abstände nach unten und innen gesetzt werden — nicht mal oben, mal unten. Sonst addieren und kollabieren sie, und niemand findet die Ursache.
- Der Container bestimmt den Abstand, nicht das Kind. Eine Karte weiß nicht, wie viel Luft sie zur nächsten Karte braucht. Das weiß nur die Liste, in der sie steht. Komponenten, die ihren eigenen Außenabstand mitbringen, sind später nirgendwo wiederverwendbar.
Praxistipp: Wenn du eine bestehende Oberfläche aufräumen sollst und nicht weißt, wo anfangen — fang hier an. Alle Abstände auf die Skala zwingen, sonst nichts ändern. Der Effekt ist größer als jedes Redesign der Komponenten und kostet einen Bruchteil.
Ein Spaltenraster ist stark bei Inhalten, die sich wiederholen: Kartenlisten, Teaser, Kacheln, Dashboards. Im Bildungsportal, das ich betreue, sind das die Übersichtsseiten — Kurse, Materialien, Sammlungen. Dort zahlt sich das Zwölfer-Raster aus, weil dieselbe Kachel je nach Kontext in Drittel-, Viertel- oder Halb-Breite steht und trotzdem überall auf denselben Kanten sitzt.
Schwach wird das Spaltenraster überall dort, wo Inhalt eine eigene, inhaltlich begründete Breite hat:
- Fließtext folgt der Lesbarkeit, nicht der Spaltenzahl. Rund 60 bis 75 Zeichen pro Zeile sind der Bereich, in dem das Auge zuverlässig in die nächste Zeile findet — das ist eine typografische Entscheidung, keine Rasterfrage, und hängt direkt an Schriftgröße und Zeilenabstand.
- Formularfelder folgen der erwarteten Eingabe. Ein Feld für eine Postleitzahl, das über sechs Rasterspalten läuft, ist nicht großzügig, sondern irreführend: Die Feldbreite ist ein Hinweis darauf, wie viel erwartet wird.
- Seitenleisten und Navigationen haben oft eine feste Breite, die vom Inhalt kommt — von der längsten Menübezeichnung etwa. Sie als „drei von zwölf Spalten" zu definieren, macht sie auf großen Bildschirmen unnötig breit und auf mittleren zu schmal.
Die brauchbarste Bauweise für solche Seiten ist deshalb selten ein durchgehendes Raster über alles, sondern eine Kombination: außen ein Container mit fester Maximalbreite, darin Bereiche, die entweder dem Raster folgen oder ihre eigene Breite behalten. Ein zweispaltiges Grundlayout aus „feste Seitenleiste plus flexibler Rest" ist technisch trivial und in der Praxis stabiler als jeder Versuch, die Leiste ins Zwölfer-Raster zu zwingen.
Dashboards sind der Ort, an dem Raster am schnellsten auseinanderfallen. Der Grund ist, dass die Kacheln inhaltlich sehr unterschiedlich sind: eine Kennzahl braucht wenig Platz, ein Diagramm viel, eine Liste wächst mit den Daten. Wer jede Kachel einzeln passend macht, hat nach drei Monaten ein Mosaik.
Was trägt, ist eine kleine, feste Menge erlaubter Kachelgrößen — etwa „ein Drittel", „zwei Drittel", „volle Breite" — und die Regel, dass jede neue Kachel sich für eine davon entscheiden muss. Das ist bewusst eine Einschränkung: Sie zwingt beim Entwurf zu der Frage, wie wichtig eine Information wirklich ist, statt sie nach verfügbarem Platz zu bemessen. Und sie sorgt dafür, dass die Zeilen auch dann noch aufgehen, wenn jemand eine Kachel ausblendet oder die Reihenfolge ändert.
Lange war die Frage „bei welcher Fensterbreite ändert sich das Layout?" die zentrale Layoutfrage. Sie ist es nicht mehr — und das ist eine der wenigen Entwicklungen der letzten Jahre, die die tägliche Arbeit wirklich vereinfacht hat.
Der Grund: Ein Breakpoint misst das Fenster. Eine Komponente interessiert aber nicht das Fenster, sondern der Platz, den sie selbst bekommt. Dieselbe Kartenliste steht einmal auf einer breiten Seite, einmal in einer schmalen Seitenleiste, einmal in einem Dialog. Mit reinen Fenster-Breakpoints brauchst du dafür drei Varianten oder eine Reihe von Sonderregeln, die niemand mehr überblickt.

Container Queries drehen das um: Die Komponente fragt ihren eigenen Container. Ist er breiter als ein bestimmter Wert, stellt sie sich nebeneinander, sonst untereinander. Die Regel steht einmal in der Komponente — und gilt danach überall, wo die Komponente eingesetzt wird, ohne dass die Seite etwas davon wissen muss.
Für die Gestaltung heißt das dreierlei:
- Layoutwechsel gehören zur Komponente, nicht zur Seite. Wenn du eine Komponente übergibst, gehört die Angabe dazu, ab welcher Breite sie umbricht — nicht, auf welchem Gerät.
- Breakpoints bleiben für das Grundgerüst. Ob es überhaupt eine Seitenleiste gibt, ob die Navigation als Leiste oder als Menü erscheint: Das sind weiterhin Fensterentscheidungen.
- Geräteklassen sind eine Krücke. „Tablet" ist keine Breite. Die Entscheidung fällt dort, wo der Inhalt kippt — was der Grund ist, warum der Entwurf von der kleinsten Breite aus immer noch die ehrlichere Reihenfolge ist: Was auf 360 Pixeln trägt, trägt auch auf 1.600.
Faustregel für die Übergabe: Beschreibe den Umbruch als Eigenschaft der Komponente („ab etwa 480 Pixeln Containerbreite dreispaltig"), nicht als Gerätename. Das überlebt den nächsten Bildschirm, der Gerätename nicht.
Weißraum hat in Kundengesprächen einen schweren Stand. Er sieht nach ungenutztem Platz aus, und ungenutzter Platz sieht nach Verschwendung aus. „Da geht doch noch was hin" ist der meistgehörte Satz in jedem zweiten Review.
Der Einwand missversteht, was Weißraum tut. Er ist kein Rest, er ist ein Signal. Das Gestaltgesetz der Nähe ist eines der zuverlässigsten Wahrnehmungsprinzipien überhaupt: Was dicht beieinander steht, wird als zusammengehörig gelesen — schneller, als jede Überschrift oder Rahmenlinie das schaffen könnte. Du gruppierst nicht mit Linien und Kästen, du gruppierst mit Abstand. Kästen sind nur die Notlösung für den Fall, dass die Abstände nicht stimmen.

Daraus folgt die wichtigste Layoutregel überhaupt, und sie ist in zwei Sekunden prüfbar:
Der Abstand innerhalb einer Gruppe muss kleiner sein als der Abstand zur nächsten Gruppe.
Klingt banal. Wird trotzdem ständig verletzt — typischerweise dann, wenn jemand „einheitliche Abstände" als Qualitätsmerkmal missversteht und überall denselben Wert setzt. Das Ergebnis ist eine Oberfläche, in der alles gleich weit von allem entfernt ist: technisch sauber, inhaltlich stumm. Beschriftung und Eingabefeld gehören enger zusammen als zwei Eingabefelder. Ein Bild gehört enger an seine Bildunterschrift als an den nächsten Absatz. Wer das einhält, braucht deutlich weniger Rahmen, Linien und Hintergrundflächen — die Struktur steht schon.
Der zweite Teil der Wahrheit: Weißraum heißt nicht leere Seite. Es gibt Oberflächen, in denen Dichte selbst ein Qualitätsmerkmal ist. Wer acht Stunden am Tag mit einem Werkzeug arbeitet, will nicht scrollen, sondern sehen — Tabellen mit vielen Zeilen sind das beste Beispiel dafür. Dort ist die Aufgabe nicht, Luft zu schaffen, sondern die verbleibende Luft konsequent nach Bedeutung zu verteilen: enger innerhalb der Zeile, deutlicher zwischen den Blöcken. Großzügigkeit ist kein Wert an sich, Unterscheidbarkeit schon.
Der Einwand kommt fast immer aus derselben Sorge: dass wichtige Inhalte übersehen werden, weil sie nicht auf den ersten Blick alle sichtbar sind. Diese Sorge ist berechtigt — sie hat nur mit Weißraum wenig zu tun.
Was in dieser Situation hilft, ist nicht die Verteidigung des Abstands, sondern die Rückfrage, welche Information konkret fehlt. In neun von zehn Fällen landet man dann bei einer Priorisierungsfrage, die vorher niemand gestellt hat: Vier Dinge sollen gleich wichtig sein, und das Layout kann nur eines davon zuerst zeigen. Diese Frage lässt sich gemeinsam beantworten. „Weniger Luft" beantwortet sie nicht, sondern verschiebt sie auf die Nutzer:innen, die dann selbst sortieren müssen.
Ein Raster garantiert noch keine Ordnung. Ordnung entsteht durch gemeinsame Kanten — und zwar durch möglichst wenige.
- Eine Achse schlägt drei. Wenn Überschrift, Text und Button an derselben linken Kante beginnen, wirkt der Block ruhig. Wenn die Überschrift zentriert ist, der Text links und der Button rechts, wirkt er unruhig, auch wenn jedes Element für sich sauber positioniert ist.
- Zahlen richten sich rechts aus. Bei Beträgen und Mengen zählt die Stelle, nicht der Anfang. Links ausgerichtete Zahlenspalten sind einer der häufigsten und am leichtesten zu behebenden Fehler in Fachanwendungen.
- Gleiche Rolle, gleiche Kante. Alles, was dieselbe Funktion hat, sollte auf derselben Linie liegen: alle primären Buttons in Dialogen an derselben Position, alle Feldbeschriftungen auf derselben Höhe.
Dazu kommt der Punkt, an dem das Raster endet und das Auge übernimmt. Mathematisch zentriert ist nicht optisch zentriert. Ein nach rechts zeigendes Dreieck in einem runden Button wirkt nach links gerutscht, wenn es exakt mittig sitzt — sein visueller Schwerpunkt liegt nicht in der Mitte seines Rahmens. Runde Formen brauchen minimal mehr Größe als eckige, um gleich groß zu wirken. Ein Icon mit viel Leerraum in seiner Begrenzungsbox wirkt kleiner als eines, das die Box ausfüllt, obwohl beide dieselbe Kantenlänge haben.
Solche Korrekturen sind keine Schlamperei am System, sie sind der Teil der Arbeit, den das System nicht leisten kann. Wichtig ist nur, dass sie in der Komponente stattfinden und dort einmal festgelegt werden — nicht als freihändige Verschiebung in einem einzelnen Screen.
Und eine Grenze, die keine Geschmacksfrage ist: Layouts müssen Vergrößerung aushalten. Die WCAG verlangen in Erfolgskriterium 1.4.10, dass Inhalte bei einer Breite von 320 CSS-Pixeln ohne Scrollen in zwei Richtungen nutzbar bleiben — das entspricht 400 Prozent Zoom auf einem üblichen Desktop-Fenster. Kriterium 1.4.12 verlangt zusätzlich, dass nichts abgeschnitten wird oder verschwindet, wenn Nutzer:innen Zeilenhöhe und Buchstabenabstände vergrößern. Beides trifft genau die Layouts, die mit festen Höhen und absoluten Positionen arbeiten. Wer stattdessen mit Abstandsskala, flexiblen Containern und Umbruchregeln baut, erfüllt das fast nebenbei.
Prüfung, die zehn Sekunden dauert: Zoom auf 400 Prozent, dann quer scrollen. Wenn du musst, ist das Layout nicht fertig — unabhängig davon, wie gut es auf deinem Monitor aussieht.
Ein Raster, das nur in Figma existiert, hält ungefähr drei Sprints. Danach gibt es Screens, die niemand im Design gesehen hat, und Abstände, die aus dem Gedächtnis gesetzt wurden. Damit Layout trägt, muss es als Bauteil existieren — auf beiden Seiten.
In der Praxis reichen dafür erstaunlich wenige Grundbausteine:
- Container: setzt Maximalbreite und Außenabstand. Eine Komponente, kein wiederholtes CSS.
- Stack: ordnet Kinder untereinander mit genau einem Abstandswert aus der Skala. Deckt den größten Teil aller Layouts ab.
- Grid: verteilt Kinder auf Spalten, mit Rinne aus der Skala und einem definierten Umbruchpunkt.
- Trennstück: setzt einen definierten Abstand zwischen zwei Blöcke, wenn der Stack nicht greift — bewusst sparsam, sonst wird es zum Schlupfloch für Sonderwerte.
Auf der Designseite entspricht das Auto Layout mit fest verdrahteten Abstandswerten: Wenn in der Bibliothek nur die Werte der Skala auswählbar sind, entstehen Sonderabstände gar nicht erst. Die Übergabe wird dadurch deutlich kürzer, weil sie nicht mehr aus abgemessenen Pixelwerten besteht, sondern aus Namen: „Stack mit großem Blockabstand, darin Karten im Grid, Umbruch bei 480." Was in Figma steht und was im Code steht, ist dann dasselbe — und muss nicht mehr abgeglichen werden.
Eine kurze Prüfliste, die vor jedem Review durchläuft:
- Kommt jeder Abstand aus der Skala? Ein einziger krummer Wert reicht, um die Regel zu untergraben.
- Stimmt die Gruppierung? Innerhalb enger als außerhalb, überall.
- Wie viele linke Kanten hat der Screen? Mehr als zwei sind selten begründet.
- Hält das Layout 400 Prozent Zoom aus?
- Bringt eine Komponente ihren eigenen Außenabstand mit? Dann gehört er raus.
Layout ist die Disziplin, die am wenigsten nach Gestaltung aussieht und am meisten darüber entscheidet, ob ein Produkt ruhig wirkt. Vier Dinge tragen den größten Teil:
- Die Abstandsskala ist die wichtigste einzelne Entscheidung. Sie kostet eine Stunde und verhindert monatelanges Nachverhandeln.
- Das Raster folgt dem Inhalt. Zwölf Spalten sind eine Möglichkeit, keine Voreinstellung — und für Fließtext, Formularfelder und Seitenleisten ist gar nicht das Raster zuständig.
- Abstand ist Bedeutung. Innen enger als außen, immer. Wer das einhält, braucht die Hälfte seiner Rahmen und Trennlinien nicht.
- Regeln müssen Bauteile werden. Container, Stack und Grid auf beiden Seiten — sonst hält das System genau so lange, wie sich alle erinnern.
Wenn du an einem bestehenden Produkt sitzt und nur eine Sache ändern kannst: Nimm dir die Abstände vor. Nicht die Komponenten, nicht die Farben. Zwing jeden Wert auf eine Skala, prüf die Gruppierung, sieh dir die linken Kanten an. Das ist der Eingriff mit dem besten Verhältnis von Aufwand zu sichtbarem Ergebnis, den ich in der Oberflächenarbeit kenne — und der einzige, nach dem das „Irgendwas passt da noch nicht" im Review zuverlässig aufhört.