Flexbox ·
Flex-Container ·
Flex-Items ·
CSS Grid ·
Grid-Container ·
Grid-Items
Flexbox und Grid sind die modernen Layout-Modelle von CSS. Flexbox ist ideal für eindimensionale Layouts (Zeilen oder Spalten), Grid für zweidimensionale Layouts (Zeilen und Spalten).
Flexbox ist ein eindimensionales Layout-Modell für die Verteilung von Elementen entlang einer Hauptachse (row oder column). Es ist ideal für Navigationen, Karten-Layouts und zentrierte Inhalte.
| Eigenschaft | Beschreibung | Werte |
|---|---|---|
| display | Aktiviert Flexbox | flex, inline-flex |
| flex-direction | Hauptachse | row, column, row-reverse, column-reverse |
| flex-wrap | Umbruchverhalten | nowrap, wrap, wrap-reverse |
| flex-flow | Kurzform für direction + wrap | row wrap, column nowrap |
justify-content: center und align-items: center.
Flex-Container-Eigenschaften steuern die Ausrichtung und Verteilung der Flex-Items auf der Haupt- und Kreuzachse.
| Eigenschaft | Beschreibung | Werte |
|---|---|---|
| justify-content | Ausrichtung auf Hauptachse | flex-start, flex-end, center, space-between, space-around, space-evenly |
| align-items | Ausrichtung auf Kreuzachse (einzeilig) | stretch, flex-start, flex-end, center, baseline |
| align-content | Ausrichtung auf Kreuzachse (mehrzeilig) | stretch, flex-start, flex-end, center, space-between, space-around |
| gap | Abstand zwischen Items | 10px, 1rem, 5% |
| row-gap | Abstand zwischen Zeilen | 10px, 1rem |
| column-gap | Abstand zwischen Spalten | 10px, 1rem |
gap ist eine moderne Alternative zu margin für Abstände zwischen Flex-Items – es funktioniert wie bei CSS Grid.
Flex-Item-Eigenschaften steuern das individuelle Verhalten jedes Elements innerhalb eines Flex-Containers – wie Wachstum, Schrumpfung und Reihenfolge.
| Eigenschaft | Beschreibung | Werte |
|---|---|---|
| flex-grow | Wachstumsfaktor (verteilt freien Platz) | 0 (Standard), 1, 2, ... |
| flex-shrink | Schrumpfungsfaktor | 1 (Standard), 0, 2, ... |
| flex-basis | Ausgangsgröße vor Wachstum/Schrumpfung | auto, 200px, 50% |
| flex | Kurzform (grow shrink basis) | 1, 1 0 auto, 0 1 200px |
| order | Reihenfolge (visuell) | 0 (Standard), -1, 1, 2, ... |
| align-self | Individuelle Ausrichtung auf Kreuzachse | auto, flex-start, flex-end, center, stretch, baseline |
flex: 1 ist die Kurzform für flex-grow: 1; flex-shrink: 1; flex-basis: 0; – ideal für gleichmäßige Verteilung.
CSS Grid ist ein zweidimensionales Layout-Modell für Zeilen und Spalten. Es ist ideal für komplexe Seitenlayouts, Dashboard und Bildergalerien.
| Eigenschaft | Beschreibung | Werte |
|---|---|---|
| display | Aktiviert Grid | grid, inline-grid |
| grid-template-columns | Spalten definieren | 1fr 2fr, repeat(3, 1fr), auto, 100px |
| grid-template-rows | Zeilen definieren | auto, 200px, 1fr, minmax(100px, auto) |
| gap | Abstand zwischen Zellen | 10px, 1rem |
| grid-template-areas | Bereiche benennen | "header header", "sidebar main" |
repeat(auto-fill, minmax(200px, 1fr)) erstellt ein responsives Raster, das so viele Spalten wie möglich erstellt – perfekt für Karten-Layouts.
Grid-Container-Eigenschaften steuern die Ausrichtung aller Grid-Items innerhalb der Zellen und die Verteilung des verfügbaren Platzes.
| Eigenschaft | Beschreibung | Werte |
|---|---|---|
| justify-items | Ausrichtung in den Zellen (horizontal) | stretch, start, end, center |
| align-items | Ausrichtung in den Zellen (vertikal) | stretch, start, end, center |
| place-items | Kurzform (align-items justify-items) | center, start end |
| justify-content | Verteilung des Grids (horizontal) | start, end, center, space-between, space-around, space-evenly |
| align-content | Verteilung des Grids (vertikal) | start, end, center, space-between, space-around, space-evenly |
| place-content | Kurzform (align-content justify-content) | center, space-between |
place-items: center ist die Kurzform für align-items: center; justify-items: center; – perfekt für die Zentrierung von Inhalten in Grid-Zellen.
Grid-Item-Eigenschaften steuern die Positionierung und Größe einzelner Elemente im Grid – über Spalten-, Zeilen- und Bereichsangaben.
| Eigenschaft | Beschreibung | Werte |
|---|---|---|
| grid-column | Spaltenposition | 1 / 3, span 2, 2 / -1 |
| grid-row | Zeilenposition | 1 / 3, span 2, 2 / -1 |
| grid-area | Bereich oder grid-row / grid-column | header, 1 / 2 / 3 / 4 |
| justify-self | Individuelle horizontale Ausrichtung | stretch, start, end, center |
| align-self | Individuelle vertikale Ausrichtung | stretch, start, end, center |
| place-self | Kurzform (align-self justify-self) | center, start end |
grid-area mit grid-template-areas macht Layouts extrem lesbar – ideal für komplexe Seitenstrukturen.
flex
justify-content
flex: 1
grid
grid-template
grid-area
display: flex; justify-content: center; align-items: center; ·
display: grid; grid-template-columns: repeat(3, 1fr);