J'ai deux éléments frères, chacun contenant du contenu dynamique.
Dans certains cas, sibling-1
contiendra plus de contenu que sibling-2
, et vice versa. Je veux que la hauteur du deuxième élément sibling-2
soit toujours égale à la hauteur du premier sibling-1
. Si la hauteur de sibling-2
est supérieure à la hauteur de sibling-1
, il débordera du flex
.
Existe-t-il un moyen d'obtenir cet effet en utilisant Flexbox ?
En gros non. La fonction de hauteur flexible est basée sur la hauteur du conteneur et non sur des éléments frères spécifiques.
Ainsi, l'élément frère 1 et l'élément frère 2 peuvent toujours être de la même hauteur.
Cependant, flexbox n'a pas de mécanisme intégré pour contraindre un élément à avoir la même hauteur qu'un élément frère.
Envisagez d'utiliser les propriétés de positionnement JavaScript ou CSS.
Voici un exemple utilisant le positionnement absolu :
jsFiddle
Oui, c'est possible. Conservez la hauteur maximale définie par le nœud frère et définissez le
flex-basis: 0
和flex-grow: 1
des autres nœuds de telle sorte que, par spécification, ils s'étendent à la même hauteur que le frère frère. Il n’y a pas de positionnement absolu. Aucune hauteur n'est définie sur aucun élément.