30 votes

Hauteur : Auto dans Internet Explorer 8 et inférieur

Dans l'optique d'un design réactif, j'utilise %s pour les images, par exemple :

#example img {
    width: 100%;
    height: auto;
    max-width: 690px; // Width of the image uploaded.
}

Cela fonctionne parfaitement, sauf dans Internet Explorer 8 et inférieur. Est-ce dû à height: auto faisant partie de CSS3, qui n'est pris en charge qu'à partir d'IE9 ?

Et la partie la plus importante... des suggestions pour contourner ce problème ? La seule chose à laquelle je pense pour l'instant est de lui donner une hauteur maximale.

Merci

57voto

ryanve Points 6881

Essayez ça :

img {
  width: inherit;  /* Make images fill their parent's space. Solves IE8. */
  max-width: 100%; /* Add !important if needed. */
  height: auto;    /* Add !important if needed. */
}

OU :

img { max-width:100%; height: auto; } /* Enough everywhere except IE8. */
@media \0screen {img { width: auto }} /* Prevent height distortion in IE8. */

Les deux solutions fonctionnent. La différence est que width:inherit fait que les images remplissent l'espace de leur parent alors que width:auto les maximise à leurs dimensions réelles. Voir fit.css

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X