Zunächst müssen wir auswählen, welche Elemente als flexible Boxen angelegt werden sollen. Dazu setzen wir einen speziellen Wert von
display auf das Elternelement der Elemente, die du beeinflussen möchtest.
Das Flex-Modell
Wenn Elemente als Flex-Items angelegt werden, sind sie entlang zwei Achsen angeordnet:Hauptachse
Hauptachse
Die Hauptachse ist die Achse, die in der Richtung verläuft, in der die Flex-Items angeordnet sind (zum Beispiel eine Zeile über die Seite, oder eine Spalte die Seite hinunter.)
Querachse
Querachse
Die Querachse ist die Achse, die senkrecht zur Richtung verläuft, in der die Flex-Items angeordnet sind.
Flex-Container
Flex-Container
Das Elternelement, das
display: flex auf sich gesetzt hat wird als Flex-Container bezeichnet.Flex-Items
Flex-Items
Die Elemente, die als flexible Boxen innerhalb des Flex-Containers angelegt sind, werden als Flex-Items bezeichnet
Spalten oder Zeilen
Flexbox bietet eine Eigenschaft namensflex-direction, die festlegt, in welche Richtung die Hauptachse verläuft. Standardmässig ist dies auf row gesetzt, was bewirkt, dass sie in einer Zeile angeordnet sind.
Umbrüche
Standardmässig versuchen die Flex-Elemente, alle in eine Zeile zu passen. Mit dieser Eigenschaft kannst du das ändern und die Elemente nach Bedarf umbrechen lassen.Horizontale und Vertikale Ausrichtung
justify-content definiert die Ausrichtung entlang der Hauptachse.
align-items definiert die Ausrichtung entlang der Querachse.
align-content richtet die Zeilen eines Flex-Containers aus, wenn in der Querachse zusätzlicher Platz vorhanden ist, ähnlich wie justify-content einzelne Elemente innerhalb der Hauptachse ausrichtet.
Diese Eigenschaft wird nur bei mehrzeiligen flexiblen Containern wirksam, bei denen
flex-wrap entweder auf wrap oder wrap-reverse eingestellt ist. Ein einzeiliger flexibler Container (d. h. ein Container, bei dem flex-wrap auf den Standardwert no-wrap eingestellt ist) spiegelt align-content nicht wider.Abstände
Die Eigenschaftgap steuert ausdrücklich den Abstand zwischen Flex-Elementen. Dieser Abstand wird nur zwischen den Elementen und nicht an den Aussenkanten angewendet.
Flex-Items anordnen
Standardmässig werden die Flex-Elemente in der Reihenfolge der Quelle angeordnet. Die Eigenschaftorder steuert jedoch die Reihenfolge, in der sie im Flex-Container erscheinen.
Flexible Grössenanpassung
flex-grow definiert die Fähigkeit eines Flex-Items, bei Bedarf zu wachsen. Er akzeptiert einen einheitenlosen Wert, der als Proportion dient. Er gibt an, wie viel des verfügbaren Platzes innerhalb des Flex-Containers das Element einnehmen soll.
Die **
flex-shrink-**Eigenschaft legt den Verkleinerungsfaktor eines Flex-Elements fest.
Die **
flex-basis-**Eigenschaft legt die anfängliche Hauptgrösse eines Flex-Elements fest.
flex ist die Kurzform für flex-grow, flex-shrink und flex-basis. Der zweite und dritte Parameter (flex-shrink und flex-basis) sind optional. Der Standardwert ist 0 1 auto, aber wenn du einen einzelnen Zahlenwert angibst, z. B. flex: 5;, ändert sich die flex-basis auf 0%, d. h. es ist wie die Einstellung flex-grow: 5; flex-shrink: 1; flex-basis: 0%;.