Maison > interface Web > tutoriel CSS > Pourquoi « text-overflow » ne fonctionne-t-il pas avec Flexbox et comment puis-je y remédier ?

Pourquoi « text-overflow » ne fonctionne-t-il pas avec Flexbox et comment puis-je y remédier ?

Susan Sarandon
Libérer: 2024-12-15 03:19:12
original
603 Les gens l'ont consulté

Why Doesn't `text-overflow` Work with Flexbox, and How Can I Fix It?

Pourquoi le dépassement de texte ne fonctionne-t-il pas avec Flex Display ?

En CSS, la propriété text-overflow est utilisée pour tronquer le texte lorsqu'il dépasse la largeur disponible de son conteneur. Cependant, lorsqu'il est utilisé avec display: flex, il peut ne pas fonctionner comme prévu.

Considérez le code suivant :

.flex-container {
  display: flex;
  text-overflow: ellipsis;
  overflow: hidden;
  text-align: left;
}
Copier après la connexion
<h1>Flexible Boxes</h1>
<div class="flex-container">
Copier après la connexion

Dans cet exemple, le flex-container est un conteneur flexbox, et le texte dans son div enfant devrait être tronqué. Cependant, vous pouvez rencontrer le résultat suivant :

Output: ThisIsASamp  
Expected: ThisIsASam...
Copier après la connexion

Si vous supprimez la propriété display: flex, la troncature du texte fonctionne comme prévu. Alors, quel est le problème ?

Le problème réside dans la manière dont display: flex répartit l'espace au sein du conteneur. Sans flexion, le texte est compressé dans la largeur disponible et tronqué en conséquence. Cependant, lorsque flex est appliqué, l'élément enfant (le div) devient un élément flex et hérite des propriétés flexbox du conteneur.

Pour résoudre ce problème, vous devez styliser explicitement l'élément enfant pour tronquer son texte. Une façon d'y parvenir consiste à créer une classe distincte pour les enfants flex et à appliquer les styles appropriés :

.flex-child {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
Copier après la connexion

En appliquant ces styles à l'élément enfant, vous vous assurez qu'il enveloppe son texte et le tronque lorsque nécessaire, même dans un conteneur flexbox.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal