J'en ai deux inclus<div>
的行,每行都有display: flex;
,每个行中都包含几个子<div>
项目。在下面的示例中,您可以看到在第一行中有2个项目(绿色的盒子标记为“item”),它们的比例为6/3
。在第二行中有4个项目,它们的比例为2/2/2/3
.
Maintenant, je veux que le dernier élément de chaque rangée (ait flex: 3;
)能够完美对齐,除非我添加一个gap: X px;
.
Comment puis-je inclure cet gap
,以便具有相同宽度的项目根据它们的flex
alignement de propriété dans le calcul ?
Ou simplifiez-le graphiquement dans l'extrait de code suivant : Comment aligner la bordure rouge ?
.flex { height: 50px; display: flex; gap: 20px; // <- 破坏我的布局的罪魁祸首 } .item { background-color: green; outline: 1px solid black; display: flex; justify-content: center; align-items: center; } .item-2 { flex: 2; } .item-3 { flex: 3; } .item-6 { flex: 6; }
<div> <div class="flex"> <div class="item item-6" style="border-right: 2px solid red;">item</div> <div class="item item-3">item</div> </div> <div class="flex"> <div class="item item-2">item</div> <div class="item item-2">item</div> <div class="item item-2" style="border-right: 2px solid red;">item</div> <div class="item item-3">item</div> </div> </div>
L'une des nombreuses solutions possibles consiste à envelopper certains éléments dans un autre flex div.
Voir le code ci-dessous qui contient la classe
flex-item
: