Maison >interface Web >tutoriel CSS >Comment implémenter une taille d'image adaptative à l'aide des unités CSS Viewport vmin et vw

Comment implémenter une taille d'image adaptative à l'aide des unités CSS Viewport vmin et vw

王林
王林original
2023-09-13 08:18:381303parcourir

使用 CSS Viewport 单位 vmin 和 vw 实现自适应图片大小的方法

Comment implémenter une taille d'image adaptative à l'aide des unités CSS Viewport vmin et vw

Dans la conception Web, nous rencontrons souvent des situations où les images doivent s'adapter à la taille de l'écran. Pour atteindre cet objectif, CSS fournit une unité puissante : l’unité viewport. où vmin représente le pourcentage de la plus petite de la largeur de la fenêtre et vw représente le pourcentage de la largeur de la fenêtre.

Ainsi, nous pouvons utiliser ces deux unités pour obtenir l'effet de taille d'image adaptative. La méthode de mise en œuvre spécifique sera présentée ci-dessous, ainsi que les exemples de code correspondants.

  1. Utilisez vmin pour définir la largeur et la hauteur de l'image

Tout d'abord, nous devons donner à l'image un rapport hauteur/largeur fixe, puis utiliser les unités vmin pour définir la largeur et la hauteur de l'image. Voici un exemple simple :

<style>
    .image-container {
        width: 90vmin;
        height: 90vmin;
        max-width: 90vw;
        max-height: 90vw;
    }

    .responsive-image {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
</style>

<div class="image-container">
    <img src="example.jpg" alt="Example Image" class="responsive-image">
</div>

Dans le code ci-dessus, .image-container est un div qui enveloppe l'image. La largeur et la hauteur sont définies respectivement sur 90vmin dans le style, ce qui garantit que le rapport hauteur/largeur de l'image reste inchangé. . .responsive-image est la classe de l'image En définissant la largeur et la hauteur à 100 %, l'image remplit tout le conteneur. L'attribut object-fit: cover; permet à l'image de remplir complètement tout le conteneur sans déformation.

  1. Utilisez vw pour définir la largeur de l'image

Une autre méthode consiste à utiliser l'unité vw pour définir directement la largeur de l'image, mais il convient de noter que cette méthode peut entraîner un rapport hauteur/largeur de l'image déséquilibré. Voici un exemple de code :

<style>
    .responsive-image {
        width: 90vw;
        max-width: 100%;
        height: auto;
    }
</style>

<img src="example.jpg" alt="Example Image" class="responsive-image">

Dans le code ci-dessus, la classe .responsive-image définit directement la largeur sur 90vw, et l'attribut max-width : 100% peut garantir que l'image ne dépassera pas la fenêtre d'affichage sur une petite écran. hauteur : auto permet à la hauteur de l'image de s'ajuster automatiquement en fonction des changements de largeur, en conservant le rapport hauteur/largeur d'origine.

Résumé

Ce qui précède est une méthode pour implémenter une taille d'image adaptative à l'aide des unités CSS Viewport vmin et vw. En utilisant rationnellement ces deux unités, nous pouvons facilement faire en sorte que les images s'adaptent automatiquement à différentes tailles sur différents écrans et améliorer l'expérience utilisateur des pages Web. Si vous utilisez cette méthode, veuillez l'ajuster en fonction de la situation réelle et faire attention à la compatibilité. J'espère que cet article vous aidera !

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