Maison  >  Article  >  interface Web  >  Comment puis-je redimensionner les images pour les adapter aux boîtes englobantes en utilisant uniquement CSS ?

Comment puis-je redimensionner les images pour les adapter aux boîtes englobantes en utilisant uniquement CSS ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-27 11:39:30325parcourir

How Can I Scale Images to Fit Bounding Boxes Using Only CSS?

Mise à l'échelle des images pour les adapter aux cadres de délimitation à l'aide de CSS uniquement

Obtenir un effet de mise à l'échelle dynamique de l'image qui préserve les proportions peut s'avérer difficile. Cependant, en utilisant les techniques CSS3, nous pouvons résoudre ce problème et redimensionner les images pour les adapter à un cadre de délimitation.

L'approche conventionnelle avec CSS consiste à utiliser les propriétés max-width et max-height, qui réduisent les images pour les adapter. dans un conteneur spécifié. Cependant, lors de la mise à l'échelle des images, ces propriétés ne suffisent pas.

Solution CSS3

CSS3 offre la solution via les propriétés background-image et background-size. En définissant une image comme arrière-plan d'un conteneur et en utilisant background-size: contain, nous pouvons forcer l'image à être mise à l'échelle jusqu'à ce qu'une dimension atteigne la pleine largeur ou la hauteur du cadre de délimitation.

HTML

<code class="html"><div class='bounding-box'></div></code>

CSS

<code class="css">.bounding-box {
  background-image: url(...);
  background-repeat: no-repeat;
  background-size: contain;
}</code>

Compatibilité et options

Cette solution est supportée par les derniers navigateurs . CanIUse fournit un tableau de compatibilité détaillé.

Pour centrer l'image dans le cadre de délimitation, une variante du CSS peut être utilisée :

<code class="css">.bounding-box {
  background-image: url(...);
  background-size: contain;
  position: absolute;
  background-position: center;
  background-repeat: no-repeat;
  height: 100%;
  width: 100%;
}</code>

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:
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