Firefox overflow-y ne fonctionne pas avec Nested Flexbox
Dans CSS3 flexbox, un problème survient dans Firefox lorsque overflow-y est appliqué à un élément flexible imbriqué. Cela empêche l'élément flex de défiler verticalement, comme le montre ce CodePen : http://codepen.io/anon/pen/NPYVga.
Explication détaillée :
Par défaut, les éléments flexibles établissent une taille minimale basée sur la taille intrinsèque de leurs enfants. Lorsqu'un élément avec débordement : [hidden|scroll|auto] est contenu dans un élément flexible, l'élément flexible refuse systématiquement de se réduire à une taille inférieure à la taille minimale du contenu de l'enfant.
Solution :
Pour résoudre ce problème, attribuez min-height:0 à l'élément flexible ancêtre (.level-0-row2 dans le code fourni). Cela désactive le comportement de dimensionnement minimum par défaut, permettant à l'élément flexible de se réduire selon les besoins.
Voici un codepen corrigé avec le correctif :
CSS :
.level-0-row2 { -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; border: 1px solid black; box-sizing: border-box; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; min-height: 0; }
Remarque :
Chrome n'applique pas actuellement ce comportement de taille minimale par défaut, mais peut réduire de manière incorrecte les tailles minimales à 0 dans des situations spécifiques.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!