Maison  >  Article  >  interface Web  >  Comment puis-je redimensionner une image pour l'adapter à la fenêtre du navigateur sans distorsion ?

Comment puis-je redimensionner une image pour l'adapter à la fenêtre du navigateur sans distorsion ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-01 15:51:551060parcourir

How Can I Resize an Image to Fit the Browser Window Without Distortion?

Redimensionner une image pour l'adapter à la fenêtre du navigateur sans distorsion

Redimensionner une image pour l'adapter à une fenêtre du navigateur est une tâche courante avec des solutions apparemment simples. Cependant, respecter des exigences spécifiques, telles que préserver les proportions et éviter les recadrages, peut présenter des défis.

Solution sans barres de défilement ni Javascript (CSS uniquement)

<code class="html"><html>
<head>
  <style>
    * {
      margin: 0;
      padding: 0;
    }
    .imgbox {
      display: grid;
      height: 100%;
    }
    .center-fit {
      max-width: 100%;
      max-height: 100vh; /* vh ensures height matches browser window */
      margin: auto;
    }
  </style>
</head>
<body>
  <div class="imgbox">
    <img class="center-fit" src='pic.png'>
  </div>
</body>
</html></code>

Ceci La solution utilise CSS Grid pour garantir que le conteneur d'images occupe toute la hauteur de la fenêtre. L'image est ensuite définie pour s'adapter horizontalement et verticalement à l'intérieur de ce conteneur, en préservant ses proportions et en évitant l'ajout de barres de défilement.

Solution avec JQuery

Si Javascript est disponible , une autre approche est :

<code class="html"><html>
<body>

<img class="center fit" src="pic.jpg" >

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
  function set_body_height() {
    $('body').height($(window).height());
  }
  $(document).ready(function() {
    $(window).bind('resize', set_body_height);
    set_body_height();
  });
</script>

</body>
</html></code>

Ici, la hauteur du corps est définie pour correspondre à la hauteur de la fenêtre, garantissant ainsi que la propriété max-height sur l'image fonctionne correctement. L'événement de redimensionnement de la fenêtre est également géré pour ajuster automatiquement la hauteur du corps et la taille de l'image lorsque la fenêtre est redimensionnée.

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