Maison > interface Web > tutoriel CSS > Comment conserver le rapport hauteur/largeur de l'image dans Flexbox ?

Comment conserver le rapport hauteur/largeur de l'image dans Flexbox ?

DDD
Libérer: 2024-12-17 19:01:14
original
495 Les gens l'ont consulté

How to Maintain Image Aspect Ratio in Flexbox?

Maintenir les proportions de l'image dans Flexbox

Dans une disposition flexbox, les images ont tendance à s'étirer ou à rétrécir de manière disproportionnée pour remplir la largeur du conteneur. Pour conserver les proportions tout en ajustant la hauteur de l'image, envisagez les solutions suivantes :

Option 1 : ajustement d'objet

Ajoutez la propriété d'ajustement d'objet à l'image :

img {
  object-fit: contain;
}
Copier après la connexion

Cela garantit que l'image conserve ses dimensions tout en s'insérant dans le conteneur.

Option 2 : Règles Flexbox

Utilisez les propriétés flexbox suivantes sur l'image :

img {
  align-self: center;
  flex: 0 0 auto;
}
Copier après la connexion
  • align-self : le centre aligne l'image verticalement dans le conteneur.
  • flex : 0 0 auto empêche l'image de s'étirer ou de se rétrécir le long de l'axe de flexion (c'est-à-dire verticalement).

Exemple en direct :

<div class="slider">
  <img src="http://www.placebacon.net/400/300" alt="Bacn">
  <img src="http://www.placebacon.net/400/300" alt="Bacn">
  <img src="http://www.placebacon.net/400/300" alt="Bacn">
  <img src="http://www.placebacon.net/400/300" alt="Bacn">
</div>
Copier après la connexion
.slider {
  display: flex;
}

.slider img {
  margin: 0 5px;
}

/* Option 1: object-fit */
.img-contain {
  object-fit: contain;
}

/* Option 2: Flexbox Rules */
.img-flex {
  align-self: center;
  flex: 0 0 auto;
}
Copier après la connexion

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!

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal