Comment puis-je faire en sorte que la colonne Flex du bas conserve l'ordre des éléments à l'aide de CSS ?
P粉277464743
P粉277464743 2024-03-30 11:59:06
0
2
392

J'ai une colonne d'éléments Flex centrée horizontalement, triée de 1 à 5, alignée depuis le haut du conteneur, comme ceci :

body, html {
  height: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.container {
  display: inline-flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: flex-end;
  align-content: center;
  width: 100%;
  height: 100%;
  background: pink;
}
.item {
  margin: 1px;
  width: 30px;
  height: 30px;
  background: green;
}
<div class=container><div class=item>1</div><div class=item>2</div><div class=item>3</div><div class=item>4</div><div class=item>5</div></div>

Je veux qu’il s’aligne avec le fond du récipient. J'ai réussi à le faire en utilisant flex-direction: column-reverse; comme dans l'extrait suivant :

body, html {
  height: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.container {
  display: inline-flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
  align-items: flex-end;
  align-content: center;
  width: 100%;
  height: 100%;
  background: pink;
}
.item {
  margin: 1px;
  width: 30px;
  height: 30px;
  background: green;
}
<div class=container><div class=item>1</div><div class=item>2</div><div class=item>3</div><div class=item>4</div><div class=item>5</div></div>

Mais, comme vous pouvez le constater, ces éléments sont problématiques ! Existe-t-il un moyen d'avoir une colonne Flex en bas sans inverser l'ordre des éléments en utilisant CSS ? J'ai essayé toutes les propriétés Flex que je connais jusqu'à présent, sans succès.

P粉277464743
P粉277464743

répondre à tous(2)
P粉420958692

Vous devez utiliser justify-content 属性沿主轴对齐内容(在您的情况下是垂直对齐)。您正在使用 align-items , qui définit la manière dont les éléments doivent être alignés le long de l'axe transversal.

body, html {
  height: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.container {
  display: inline-flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: flex-end;
  align-content: center;
  width: 100%;
  height: 100%;
  background: pink;
}
.item {
  margin: 1px;
  width: 30px;
  height: 30px;
  background: green;
}
1
2
3
4
5
P粉269530053

Vous pouvez utiliser justify-content: end;

.container {
  width: 150px;
  height: 150px;
  border: 1px solid black;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: end;
}

.content {
  width: 25px;
  height: 25px;
  border: 1px solid black;
}
1
2
3
4
5
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal