Ich versuche, in einem Container mit einer festgelegten Höhe eine Anzahl von Elementen untereinander zu haben. Die Elemente werden dann nebeneinander fortgesetzt, wenn kein Platz mehr ist.
Das ist die Idee:
Ich versuche dies zu erreichen mit flexbox, einem Container mit einer eingestellten Höhe, Richtung wird auf column
gesetzt und flex-wrap
ist wrap
:
Das Problem ist, dass zwischen den Spalten große Lücken bestehen.
Ich habe versucht, sowohl justify-content
als auch align-items
auf flex-start
zu setzen, aber das ist wahrscheinlich der Standardwert.
Gibt es eine Möglichkeit, das zu lösen?
Hier ist der Code:
Eine anfängliche Einstellung eines Flex-Containers ist align-content: stretch
.
Dies bedeutet, dass mehrere Linien von Flex-Elementen gleichmäßig entlang der Querachse verteilt werden.
Um dieses Verhalten zu überschreiben, wenden Sie align-content: flex-start
auf den Container an.
Wenn Sie in einem einzeiligen flexiblen Container arbeiten (dh flex-wrap: nowrap
), sind die Eigenschaften, die zum Verteilen von Speicherplatz entlang der Querachse verwendet werden, align-items
und align-self
.
Wenn Sie in einem mehrzeiligen flexiblen Container arbeiten (dh flex-wrap: wrap
) - wie in der Frage - die Eigenschaft, die verwendet werden soll, um Flex-Linien (Zeilen / Spalten) entlang der Querachse ist align-content
.
Aus der Spezifikation:
8.3. Achsenübergreifende Ausrichtung: Die Eigenschaften
align-items
undalign-self
align-items
legt die Standardausrichtung für alle Elemente des Flex-Containers fest, einschließlich anonymer Flex-Elemente.align-self
ermöglicht das Überschreiben dieser Standardausrichtung für einzelne Flex-Elemente.8.4. Flex-Linien verpacken: the
align-content
EigenschaftDie Eigenschaft
align-content
richtet die Linien eines Flex-Containers innerhalb der Flex Container, wenn mehr Platz in der Querachse ist, ähnlich wie bei wiejustify-content
einzelne Elemente innerhalb der Hauptachse ausrichtet. Beachten Sie, dass diese Eigenschaft keinen Einfluss auf einen einzeiligen Flex-Container hat.
Die Eigenschaft align-content
benötigt sechs Werte:
flex-start
flex-end
center
space-between
space-around
stretch
Hier ist die Definition für stretch
:
stretch
Linien dehnen sich, um den verbleibenden Platz zu belegen. Wenn der verbleibende freie Speicherplatz negativ ist, ist dieser Wert identisch mit
flex-start
. Andernfalls wird der Freiraum gleichmäßig auf alle Zeilen aufgeteilt, wodurch ihre Quergröße vergrößert wird.
Mit anderen Worten, align-content: stretch
auf der Querachse ist ähnlich wie flex: 1
auf der Hauptachse.