CSS-Box-Modell-Visualisierer

Passen Sie Margin, Border, Padding und Inhaltsmaße an und sehen Sie das CSS-Boxmodell live.

Maße

Padding (px)

Rahmen (px)

Margin (px)

margin
border
padding
200 × 120

  

So funktioniert es

  1. Boxmodell-Werte eingeben: Stellen Sie Margin, Border, Padding und Inhaltsmaße über die Eingabefelder oder interaktiven Regler ein.
  2. Visualisierung erkunden: Das klassische verschachtelte Box-Diagramm aktualisiert sich in Echtzeit, Margin (orange), Border (gelb), Padding (grün) und Inhalt (blau) sind alle klar beschriftet.
  3. CSS kopieren: Klicken Sie auf CSS kopieren, um die vollständigen Boxmodell-Eigenschaften für das konfigurierte Element zu erhalten.

Warum den CSS-Boxmodell-Visualisierer nutzen?

Das CSS-Boxmodell ist eines der grundlegendsten Konzepte im Web-Layout, und eine der häufigsten Quellen von Layout-Bugs, vor allem beim Mischen von box-sizing-Werten, beim Margin-Collapsing und bei der Rahmen-Dimensionierung. Dieser interaktive Visualisierer macht das Boxmodell konkret und greifbar: Sie passen Werte an und sehen sofort, wie sich Margin, Border und Padding um den Inhaltsbereich stapeln. Unverzichtbar zum Lernen, Debuggen und Vermitteln von CSS.

Funktionen

Häufige Fragen

Was ist der Unterschied zwischen content-box und border-box?

Bei content-box (Standard) gelten width und height nur für den Inhaltsbereich, Padding und Border erhöhen die Gesamtgröße des Elements. Bei border-box schließen width und height Padding und Border ein, was die Vorhersage der Elementgrößen erleichtert. Die meisten modernen CSS-Resets wenden box-sizing: border-box auf alle Elemente an.

Was ist Margin-Collapsing?

Wenn zwei vertikale Margins aneinanderstoßen (zwischen benachbarten Block-Elementen oder zwischen Eltern und erstem/letztem Kind), kollabieren sie zu einem einzigen Margin, der dem größeren der beiden Werte entspricht. Bei Flex- oder Grid-Kindern oder bei Elementen mit Padding oder Rahmen geschieht das nicht.

Wie entferne ich zusätzlichen Abstand unterhalb von Inline-Elementen?

Inline-Elemente (wie <img>) haben einen kleinen Abstand darunter, der durch die Grundlinien-Ausrichtung der line-height entsteht. Beheben Sie das, indem Sie display: block am Element setzen oder vertical-align: bottom oder font-size: 0 am Elternelement.

Was das CSS-Box-Modell tatsächlich definiert

Das CSS-Box-Modell ist die Rechteck-Darstellung jedes Elements auf einer Webseite. Jedes Element hat vier konzentrische Boxen: die Content-Box (wo Text, Bilder, Kindelemente leben), die Padding-Box (Raum zwischen Inhalt und Rand, innerhalb der sichtbaren Grenze), die Border-Box (der sichtbare Umriss um das Padding gezeichnet) und die Margin-Box (transparenter Raum außerhalb der Border, der dieses Element von seinen Nachbarn trennt). Die sichtbare Gesamtgröße eines Elements ist Inhalt + Padding + Border; die Margin ist unsichtbar, drückt aber andere Elemente weg.

Das kritische Konzept ist box-sizing. Standardmäßig (box-sizing: content-box, der CSS 1-Spezifikationswert) gelten die width- und height-Eigenschaften nur für die Content-Box. Wenn Sie width: 200px; padding: 20px; border: 2px solid setzen, beträgt die gerenderte Gesamtbreite 200 + 40 + 4 = 244 Pixel. Das ist unintuitiv: ein «200px breites» Element nimmt tatsächlich 244 Pixel horizontalen Platz ein. Die Alternative box-sizing: border-box (in CSS 3 hinzugefügt) kehrt dies um: die width-Eigenschaft ist die sichtbare Gesamtgröße einschließlich Padding und Border, also schrumpft der Inhaltsbereich, um zu passen. border-box ist das, was die meisten Entwickler erwarten; es wurde zum De-facto-Standard über Paul Irishs 2012er «* { box-sizing: border-box }» CSS-Reset.

Das Box-Modell zu verstehen ist wichtig, weil Layout-Bugs fast immer auf Verwirrung darüber zurückgehen, welcher Wert für welche Box gilt. «Warum ist mein Element breiter als ich gesetzt habe?» ist content-box-Überraschung. «Warum schiebt meine Margin die Geschwister nicht nach unten?» ist normalerweise Margin-Collapsing. «Warum verhält sich padding-top: 50% seltsam?» liegt daran, dass prozentuales Padding relativ zur Breite des Elternteils berechnet wird, nicht zur Höhe. Jeder CSS-Entwickler begegnet diesen Verwirrungen; dieser Visualisierer macht sie konkret, indem er Sie Werte anpassen und die resultierende Box-Geometrie in Echtzeit sehen lässt.

Wie dieses Tool hinter den Kulissen funktioniert

Das interaktive Diagramm ist eine Reihe verschachtelter farbiger Divs, die jeder Box entsprechen (Margin in Orange, Border in Gelb, Padding in Grün, Content in Blau). Wenn Sie die Eingabewerte ändern, aktualisiert JavaScript die Inline-style-Attribute der Diagramm-Divs, sodass sie die Werte numerisch und visuell widerspiegeln. Die Proportionen werden skaliert, um in den Vorschaubereich zu passen; absolute Pixel-Werte würden das Diagramm bei typischen Eingaben vom Bildschirm schieben.

Die Gesamtgrößenberechnung hängt vom box-sizing-Modus ab. Für content-box: Gesamtbreite = Inhaltsbreite + padding-left + padding-right + border-left + border-right. Für border-box: Gesamtbreite = der width-Wert (Padding und Border werden vom Inhaltsbereich abgezogen). Das Tool berechnet beide Modi gleichzeitig, wenn Sie box-sizing umschalten, sodass Sie direkt vergleichen können.

Die generierte CSS-Ausgabe verwendet Ihre Eingaben als Eigenschaftswerte: box-sizing: border-box; width: 200px; padding: 10px 20px; border: 2px solid; margin: 1rem auto;. Kopieren Sie dies direkt in Ihr Stylesheet und wenden Sie die passende Klasse an. Nichts verlässt Ihren Browser; alles läuft lokal in JavaScript. Keine Analyse, kein Backend, kein Konto. Aktualisieren Sie und der Zustand ist weg.

Kurze Geschichte des CSS-Box-Modells

Reale Arbeitsabläufe

Häufige Fallstricke und was sie bedeuten

Datenschutz: alles läuft in Ihrem Browser

CSS-Lern- und Visualisierungs-Tools kommen in zwei Geschmacksrichtungen: einfache HTML-Seiten mit clientseitigem JavaScript (privat, schnell, kein Setup) und Cloud-Editoren mit gespeicherten Projekten (kollaborativ aber mit Datenschutz-Kompromissen). Dieses Tool ist die erste Art. Ihre eingegebenen Werte, Ihr box-sizing-Umschaltzustand, Ihr generiertes CSS: alles bleibt in Ihrer Browser-Sitzung. Aktualisieren Sie die Seite und der Zustand ist weg, es sei denn, Sie haben das CSS zuerst kopiert.

Die Datenschutzrisiken sind hier gering, weil Box-Modell-Werte selten sensible Informationen enthalten. Trotzdem zählt das Fehlen von Analytik: Sie können frei experimentieren, ohne dass Ihr Trial-and-Error-Prozess aufgezeichnet wird. Besonders nützlich in Klassenzimmer- oder Unternehmensschulungs-Umgebungen, wo das Registrieren von Studenten oder Auszubildenden auf Drittanbieter-Plattformen ein Reibungspunkt ist. Dies ist eine einzelne statische Seite ohne Backend, nutzbar in jedem Browser, einschließlich gesperrter Unternehmensmaschinen.

Wann ein anderes Tool die richtige Wahl ist

Weitere häufig gestellte Fragen

Sollte ich universelles * { box-sizing: border-box } verwenden?

Für die meisten Projekte ja. Paul Irishs Vorschlag von 2012 ist jetzt der Branchen-Default und stimmt damit überein, wie die meisten Entwickler erwarten, dass width und height funktionieren. Frameworks wie Bootstrap, Tailwind, Bulma und Material UI werden mit border-box als Default ausgeliefert. Moderne Projekte, die 2026 beginnen, sollten *, *::before, *::after { box-sizing: border-box; } am Anfang ihres Resets setzen und selten wieder über box-sizing nachdenken müssen. Spezifische Überschreibungen auf content-box sind für einzelne Elemente möglich, wo border-box die Dinge durcheinanderbringen würde.

Warum schiebt meine Margin den Elternteil nach unten statt die Geschwister?

Das ist Margin-Collapsing. Wenn die obere Margin eines Kindes auf den oberen Rand des Elternteils ohne Padding/Border dazwischen trifft, «entkommt» die Margin des Kindes und gilt stattdessen für den Elternteil. Behebungen: padding-top: 1px zum Elternteil hinzufügen (jeder Wert funktioniert), border: 1px solid transparent hinzufügen, den Elternteil als Flex- oder Grid-Container setzen (Collapsing wird in diesen Modi unterdrückt), oder display: flow-root auf dem Elternteil verwenden (eine moderne explizite «neuen Block-Formatting-Context etablieren»-Regel). Alle diese blockieren die Margin daran, durchzukollabieren.

Was ist der Unterschied zwischen margin: auto und margin: 0?

margin: 0 bedeutet keine Margin; das Element sitzt bündig an seinen Nachbarn. margin: auto bedeutet, dass der Browser die Margin berechnet, um verbleibenden horizontalen Platz zu verteilen, typischerweise verwendet, um ein Block-Element zu zentrieren: margin-left: auto; margin-right: auto; teilt den verbleibenden Platz gleichmäßig auf. margin: auto auto auto auto (oder Kurzschreibweise margin: auto) zentriert sowohl horizontal als auch vertikal innerhalb eines Flex-Containers. Außerhalb von Flex/Grid funktionieren nur horizontale Auto-Margins.

Wie unterscheidet sich outline von border?

Outline zeichnet um ein Element herum, ist aber außerhalb des Box-Modells: es fügt nicht zur Größe des Elements hinzu und schiebt Nachbarn nicht weg. Border ist Teil des Box-Modells und fügt zur gerenderten Größe hinzu. Outline wird typischerweise für Fokus-Ringe verwendet (:focus-visible-Outlines), wo Sie einen sichtbaren Indikator ohne Layout-Verschiebung wollen. Border wird verwendet, wenn die Linie Teil der Struktur des Elements sein soll. Entfernen Sie outline: none nicht, ohne einen alternativen Fokus-Indikator bereitzustellen; das zu tun bricht Tastatur-Barrierefreiheit.

Warum logische Eigenschaften wie margin-inline-start verwenden?

Logische Eigenschaften (margin-block-start, padding-inline usw.) passen sich an die Schreibrichtung des Dokuments an. Im Englischen (von links nach rechts) ist margin-inline-start dasselbe wie margin-left. Im Arabischen oder Hebräischen (von rechts nach links) wird es automatisch zu margin-right. Für Sites, die mehrere Sprachen unterstützen, machen logische Eigenschaften CSS-Internationalisierung automatisch. Für rein englische Sites sind sie effektiv äquivalent, signalisieren aber Absicht klarer: «diese Margin ist am Anfang des Textflusses» statt «diese Margin ist auf der linken Seite».

Wie erstelle ich eine Box mit festem Seitenverhältnis?

Der moderne Weg ist die CSS-Eigenschaft aspect-ratio: aspect-ratio: 16/9 auf einem Div macht seine Höhe automatisch 9/16 seiner Breite. Unterstützt in allen modernen Browsern (2021+). Die Legacy-Technik verwendet padding-top als Prozentsatz: ein Div mit padding-top: 56.25% erzeugt ein 16:9-Verhältnis (9/16 = 56,25%). Der padding-top-Trick funktioniert immer noch, aber die Eigenschafts-Syntax ist sauberer. Verwenden Sie aspect-ratio für neuen Code; der Legacy-Hack bleibt in Tailwind und anderen Tools, die breite Browser-Unterstützung benötigen.

Verwandte Tools

CSS-Mehrspalten-Generator CSS-Gitter-Generator CSS Flexbox-Generator CSS Border-Radius-Generator