align-self
align-self: auto | normal | stretch | flex-start | flex-end | center | baseline | start | end
Remplace pour un élément l’align-items du conteneur : les autres peuvent être étirés et celui-ci en haut, ou tous en haut et un seul en bas.
Valeurs
- auto – par défaut : l’élément suit l’
align-itemsdu conteneur. - Les autres valeurs comme pour
align-items:stretch,flex-start,flex-end,center,baseline,start,end…
Valeur initiale : auto. Héritée : non. S’applique à : les éléments flex et grid, les éléments positionnés en absolu.
Exemples
Le conteneur aligne en haut, le deuxième élément est au centre et le troisième en bas :
<div class="flex"> <div class="tall">haut</div> <div class="center">center</div> <div class="bottom">flex-end</div> </div>
.flex {
display: flex;
padding: 6px;
border: 2px dashed #999;
}
.flex > div {
padding: 6px 10px;
background: #eaf7ff;
border: 1px solid #38b8f9;
}
.flex {
align-items: flex-start;
gap: 6px;
max-width: 300px;
}
.tall { height: 80px; }
.center { align-self: center; }
.bottom { align-self: flex-end; }
Points d’attention
- Sur l’axe principal,
justify-selfn’existe pas dans Flexbox –margin-left: auto(oumargin-top: autodans une colonne) repousse un élément le long de l’axe principal. - Une
margin: autosur l’axe secondaire l’emporte suralign-self.
Prise en charge par les navigateurs
Baseline – largement disponible : dans tous les navigateurs courants depuis septembre 2015, considéré comme largement disponible depuis mars 2018. Depuis la version : Chrome 29, Firefox 20, Safari 9. État : octobre 2026 (MDN browser-compat-data).
Voir aussi :
align-items
justify-self
order
margin