redimensionner image "a la volée"

symbol

Membre actif
13 Octobre 2004
536
25
Bonjour

J'ai une image dans une div.

J'aimerais que cette image soit redimensionnée quand on reduit la fenêtre du navigateur.

Capture-d-e-cran-2018-12-24-a-07-19-02.png


voici ce qui se passe quand on reduit la fenetre
Capture-d-e-cran-2018-12-24-a-07-19-14.png


Du coup c'est moche :-/
Merci
 
Il faut la rendre "responsive" c'est à dire qui s'adapte au redimensionnement de la fenêtre.
Il faut donc lui appliquer un code CSS (classe) du style :
Bloc de code:
.redimensionnement {
  width: 100%;
  height: auto;
}

Ici le redimensionnement se fait autant en largeur qu'en hauteur.
 
Comme d'hab, j'y arrive pas !
le code actuel (pris d'un site sur le net) qui affiche l'image

Bloc de code:
<style>
#imagebandeau
{
    margin-top: -10px;
}
</style>

<div  id="imagebandeau"; align="center">
<img src="http://kenopronos.free.fr/graph/bandeaunoellong2.gif" alt="" onload="logo(this)"/>
</div>


ou dois-je placer ?
Bloc de code:
.redimensionnement {
  width: 100%;
  height: auto;
}

J'ai essayé dans divers endroits, mais ca ne ressoud pas le bin's.

Merci
 
Dernière édition:
Bloc de code:
<style>
#imagebandeau
{
    margin-top: -10px;
}
.redimensionnement {
  width: 100%;
  height: auto;
}
</style>

<div  id="imagebandeau"; align="center">
<img class="redimensionnement" src="http://kenopronos.free.fr/graph/bandeaunoellong2.gif" alt="" onload="logo(this)"/>
</div>
 
Cela s'applique pour tous les éléments ayant la classe "redimensionnement" en se basant sur la taille de l'élément l'englobant. Donc tu n'as qu'à tester ;)
 
Et pour gerer ce probleme du scrolling avec redimensionnement de la fenetre faut parfaitement maitriser le code. :bored:

C'esst dommage, la solution était a portée de main :banghead:
 
Voila ou j'en suis :

Y' a que la ligne bleue qui pose probleme (a cause du scrolling et la phrase "analyse des combinaisons...". Ces 2 choses n'apparaissement plus si je met '.redimensionnement'

Capture-d-e-cran-2018-12-25-a-10-34-09.png
 
Le html et le css, c'est difficile à modifier sans avoir le code complet ;)

Inspire toi de quelque chose comme ceci. Met toi en mode "conception adaptative" et amuse toi à modifier la taille de la fenêtre. Il faudra sans doute rajouter du texte à la fin pour que ce soit plus visible (ou mettre en mode iPhone 8).
Bloc de code:
<!DOCTYPE html>
<html lang="fr">
<head>
    <title>Overflow</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0" />
    <style>
    * {
      box-sizing: border-box;
    }

    *::-webkit-scrollbar {
      /* Pour ne pas afficher la barre de défilement */
      display: none;
    }

    html {
      height: 100%;
      margin: 0em;
      -webkit-text-size-adjust: 100%;
    }

    body {
      height: 100%;
      margin: 0em;

      background-color: #777;
    }

    main {
      height: 100%;
      width: 100%;
      padding: 1em;
      display: inline-block;
    }
    div.main_div {
      height: 100%;
      width: 100%;
      overflow-x: hidden;

      background-color: #AAA;
    }
    </style>
</head>
<body>
    <main>
        <div class="main_div">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non risus. Suspendisse lectus tortor, dignissim sit amet, adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam. Maecenas ligula massa, varius a, semper congue, euismod non, mi. Proin porttitor, orci nec nonummy molestie, enim est eleifend mi, non fermentum diam nisl sit amet erat. Duis semper. Duis arcu massa, scelerisque vitae, consequat in, pretium a, enim. Pellentesque congue. Ut in risus volutpat libero pharetra tempor. Cras vestibulum bibendum augue. Praesent egestas leo in pede. Praesent blandit odio eu enim. Pellentesque sed dui ut augue blandit sodales. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Aliquam nibh. Mauris ac mauris sed pede pellentesque fermentum. Maecenas adipiscing ante non diam sodales hendrerit.
<br>
<br>
Ut velit mauris, egestas sed, gravida nec, ornare ut, mi. Aenean ut orci vel massa suscipit pulvinar. Nulla sollicitudin. Fusce varius, ligula non tempus aliquam, nunc turpis ullamcorper nibh, in tempus sapien eros vitae ligula. Pellentesque rhoncus nunc et augue. Integer id felis. Curabitur aliquet pellentesque diam. Integer quis metus vitae elit lobortis egestas. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi vel erat non mauris convallis vehicula. Nulla et sapien. Integer tortor tellus, aliquam faucibus, convallis id, congue eu, quam. Mauris ullamcorper felis vitae erat. Proin feugiat, augue non elementum posuere, metus purus iaculis lectus, et tristique ligula justo vitae magna.
<br>
<br>
Aliquam convallis sollicitudin purus. Praesent aliquam, enim at fermentum mollis, ligula massa adipiscing nisl, ac euismod nibh nisl eu lectus. Fusce vulputate sem at sapien. Vivamus leo. Aliquam euismod libero eu enim. Nulla nec felis sed leo placerat imperdiet. Aenean suscipit nulla in justo. Suspendisse cursus rutrum augue. Nulla tincidunt tincidunt mi. Curabitur iaculis, lorem vel rhoncus faucibus, felis magna fermentum augue, et ultricies lacus lorem varius purus. Curabitur eu amet.
        </div>
    </main>
</body>
</html>
 
Forcément, si tu reprends le code tel quel :D
Dans mon exemple j'ai mis le padding à 1em et un background pour que ce soit bien visible. Le padding permet d'avoir une bordure. Met le à 0 :p

Pour ta barre bleue, au lieu d'avoir 100% met quelque chose de ce style (il te reste à trouver la taille à mettre au lieu de "5em"
Bloc de code:
width: calc(100%-5em);

Pour centre, via un margin auto et/ou un "text-align: center"
 
Impossible de te répondre sans voir le code html.
Vu comment tu galère à faire des modifications assez simple, tu peux très bien avoir fait des erreur dans ton code ou mis un paramètre qui ne faut pas.