align-self
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.
* Some parts of this feature may have varying levels of support.
Die align-self
CSS Eigenschaft überschreibt den Wert des align-items
einer Grid- oder Flex-Ebene. In einem Grid richtet sie das Element innerhalb des Grid-Bereichs aus. Im Flexbox-Modell richtet sie das Element entlang der Querachse aus.
Probieren Sie es aus
align-self: stretch;
align-self: center;
align-self: start;
align-self: end;
<section class="default-example" id="default-example">
<div class="example-container">
<div class="transition-all" id="example-element">One</div>
<div>Two</div>
<div>Three</div>
</div>
</section>
.example-container {
border: 1px solid #c5c5c5;
display: grid;
width: 200px;
grid-template-columns: 1fr 1fr;
grid-auto-rows: 80px;
grid-gap: 10px;
}
.example-container > div {
background-color: rgb(0 0 255 / 0.2);
border: 3px solid blue;
}
Die Eigenschaft gilt nicht für Block-Level-Boxen oder Tabellenelementzellen. Wenn der Querachsenabstand eines Flexbox-Elements auto
ist, wird align-self
ignoriert.
Syntax
/* Keyword values */
align-self: auto;
align-self: normal;
/* Positional alignment */
/* align-self does not take left and right values */
align-self: center; /* Put the item around the center */
align-self: start; /* Put the item at the start */
align-self: end; /* Put the item at the end */
align-self: self-start; /* Align the item flush at the start */
align-self: self-end; /* Align the item flush at the end */
align-self: flex-start; /* Put the flex item at the start */
align-self: flex-end; /* Put the flex item at the end */
align-self: anchor-center;
/* Baseline alignment */
align-self: baseline;
align-self: first baseline;
align-self: last baseline;
align-self: stretch; /* Stretch 'auto'-sized items to fit the container */
/* Overflow alignment */
align-self: safe center;
align-self: unsafe center;
/* Global values */
align-self: inherit;
align-self: initial;
align-self: revert;
align-self: revert-layer;
align-self: unset;
Werte
auto
-
Berechnet sich auf den Wert des übergeordneten Elements für
align-items
. normal
-
Die Wirkung dieses Schlüsselworts hängt vom verwendeten Layout-Modus ab:
- In absolut positionierten Layouts verhält sich das Schlüsselwort wie
start
bei ersetzten absolut positionierten Boxen und wiestretch
bei allen anderen absolut positionierten Boxen. - In der statischen Positionierung absolut positionierter Layouts verhält sich das Schlüsselwort wie
stretch
. - Für Flex-Elemente verhält sich das Schlüsselwort wie
stretch
. - Für Grid-Elemente führt dieses Schlüsselwort zu einem Verhalten ähnlich dem von
stretch
, außer bei Boxen mit einem Seitenverhältnis oder einer intrinsischen Größe, wo es sich wiestart
verhält. - Die Eigenschaft gilt nicht für Block-Level-Boxen und Tabellenelementzellen.
- In absolut positionierten Layouts verhält sich das Schlüsselwort wie
self-start
-
Richtet die Elemente so aus, dass sie mit der Kante des Ausrichtungscontainers bündig sind, die der Startseite des Elements auf der Querachse entspricht.
self-end
-
Richtet die Elemente so aus, dass sie mit der Kante des Ausrichtungscontainers bündig sind, die der Endseite des Elements auf der Querachse entspricht.
flex-start
-
Der Querstart-Abstandsrand des Flex-Elements wird mit dem Querstart-Rand der Linie bündig ausgerichtet.
flex-end
-
Der Querend-Abstandsrand des Flex-Elements wird mit dem Querend-Rand der Linie bündig ausgerichtet.
center
-
Die Abstandsbox des Flex-Elements ist auf der Querachse innerhalb der Linie zentriert. Ist die Querausdehnung des Elements größer als der Flex-Container, wird es gleichmäßig in beide Richtungen überlaufen.
baseline
,first baseline
,last baseline
-
Gibt die Teilnahme an der ersten oder letzten Basislinienausrichtung an: richtet die Ausrichtungsbasislinie des Satzes der ersten oder letzten Basislinie der Box mit der entsprechenden Basislinie in der gemeinsamen ersten oder letzten Basislinie aller Boxen in ihrer Gruppe aus. Die Rückfallausrichtung für
first baseline
iststart
, fürlast baseline
ist sieend
. stretch
-
Wenn die kombinierte Größe der Elemente entlang der Querachse kleiner ist als die Größe des Ausrichtungscontainers und das Element automatisch dimensioniert ist, wird seine Größe gleichmäßig (nicht proportional) erhöht, wobei die durch
max-height
/max-width
(oder gleichwertige Funktionalität) auferlegten Beschränkungen respektiert werden, sodass die kombinierte Größe aller automatisch dimensionierten Elemente den Ausrichtungscontainer entlang der Querachse genau ausfüllt. anchor-center
-
Im Fall von ankerpositionierten Elementen wird das Element in der Blockrichtung zum Zentrum des zugehörigen Ankerelements ausgerichtet. Siehe Zentrierung am Anker mit
anchor-center
. safe
-
Überläuft die Größe des Elements den Ausrichtungscontainer, wird das Element stattdessen so ausgerichtet, als ob der Ausrichtungsmodus
start
wäre. unsafe
-
Unabhängig von den relativen Größen des Elements und des Ausrichtungscontainers wird der angegebene Ausrichtungswert beachtet.
Formale Definition
Anfangswert | auto |
---|---|
Anwendbar auf | flex items, grid items, and absolutely-positioned boxes |
Vererbt | Nein |
Berechneter Wert | auto berechnet sich zu sich selbst bei absolut positionierten Elementen und zum berechneten Wert von align-items des Elternelements (abzüglich veralteter Schlüsselwörter) bei allen anderen Boxen oder start , falls die Box kein Elternelement hat. Sein Verhalten hängt vom Layoutmodell ab, wie für justify-self beschrieben. Ansonsten der angegebene Wert. |
Animationstyp | diskret |
Formale Syntax
Beispiele
HTML
<section>
<div>Item #1</div>
<div>Item #2</div>
<div>Item #3</div>
</section>
CSS
section {
display: flex;
align-items: center;
height: 120px;
background: beige;
}
div {
height: 60px;
background: cyan;
margin: 5px;
}
div:nth-child(3) {
align-self: flex-end;
background: pink;
}
Ergebnis
Spezifikationen
Specification |
---|
CSS Box Alignment Module Level 3 # align-self-property |
CSS Flexible Box Layout Module Level 1 # align-items-property |