
Quelle: W3C
An Um flexible Elemente entlang der Hauptachse auszurichten, gibt es eine Eigenschaft:
Code: Select all
justify-content
Code: Select all
align-content [*]align-items [*]align-self
Diese Richtungen können jedoch problemlos mit der Eigenschaft „flex-direction“ ausgetauscht werden.
Code: Select all
/* main axis is horizontal, cross axis is vertical */
flex-direction: row;
flex-direction: row-reverse;
/* main axis is vertical, cross axis is horizontal */
flex-direction: column;
flex-direction: column-reverse;
Mein Punkt bei der Beschreibung der Funktionsweise der Achsen ist, dass es in keiner Richtung etwas Besonderes zu geben scheint. Hauptachse und Querachse, sie sind beide hinsichtlich der Wichtigkeit gleich und die Flexrichtung erleichtert das Hin- und Herwechseln.
Warum erhält die Querachse also zwei zusätzliche Ausrichtungseigenschaften?
Warum werden align-content und align-items in einer Eigenschaft für die Hauptachse zusammengefasst Achse?
Warum erhält die Hauptachse keine justify-self-Eigenschaft?
Szenarien, in denen diese Eigenschaften nützlich wären:
- Platzieren eines Flex-Elements in der Ecke des Flex-Containers
Code: Select all
#box3 { align-self: flex-end; justify-self: flex-end; } - Eine Gruppe von Flex-Elementen nach rechts ausrichten (), aber das erste Element muss links ausgerichtet sein (
Code: Select all
justify-content: flex-end)Code: Select all
justify-self: flex-start
- Befestigen Sie in einer Reihe von drei Flex-Elementen das mittlere Element in der Mitte des Containers () und richten Sie die angrenzenden Elemente an den Containerkanten aus (
Code: Select all
justify-content: centerund justify-self: flex-end).Code: Select all
justify-self: flex-start
Code: Select all
justify-contentDie Eigenschaft Code: Select all
#container {
display: flex;
justify-content: space-between;
background-color: lightyellow;
}
.box {
height: 50px;
width: 75px;
background-color: springgreen;
}
.box1 {
width: 100px;
}
.box3 {
width: 200px;
}
#center {
text-align: center;
margin-bottom: 5px;
}
#center > span {
background-color: aqua;
padding: 2px;
}Code: Select all
TRUE CENTER
note that the middlebox will only be truly centered if adjacent boxes are equal width
jsFiddle-Version
Zum jetzigen Zeitpunkt gibt es keine Erwähnung von justify-self oder justify-items in der Flexbox-Spezifikation.
Allerdings in der CSS-Boxausrichtung Modul, bei dem es sich um den unvollendeten Vorschlag des W3C handelt, einen gemeinsamen Satz von Ausrichtungseigenschaften für die Verwendung in allen Boxmodellen festzulegen, gibt es dieses:

Quelle: W3C
Sie werden feststellen, dass justify-self und justify-items in Betracht gezogen werden... jedoch nicht für Flexbox.
Mobile version