J'essaie d'obtenir quelques JavaScript
pour ajuster par programme un code HTML img
afin d'afficher correctement des images de différentes tailles.
J'ai une largeur fixe img
tag à 800px
pour afficher une image, c'est la largeur maximale.
Si l'image est plus large que 800px
Je veux l'afficher à 800px
large ;
Si l'image est inférieure à 800px
large, je veux préserver sa largeur pour éviter de l'étirer.
J'utilise ce code html/javacript pour obtenir une solution partielle :
function resize_image(id) {
var img = document.getElementById(id);
var normal_width = img.width;
img.removeAttribute("width");
var real_width = img.width;
if (real_width < normal_width) {
img.width = real_width;
} else {
img.width = normal_width;
}
}
<img id="myimage" onload="resize_image(self.id);" src="https://via.placeholder.com/350x150" width="800" />
Le code ci-dessus semble fonctionner sur tous les navigateurs que j'ai testés, à l'exception de Safari
(les images ne s'affichent pas si vous ne rafraîchissez pas la page).
Je sais que je peux utiliser CSS max-width
mais cela ne fonctionne pas sur IE
< 7, ce qui est un comble.
Comment faire pour que cela fonctionne avec tous les navigateurs ? Merci d'avance.