Wow, quelle douleur c'est à dire toujours semble être. Bien qu'il y est accepté comme réponse, j'ai trouvé qu'il n'a pas résolu mon problème.
Après beaucoup de recherche j'ai trouvé que le moyen pour résoudre ce problème est de supprimer les attributs height et width de l'image en question. Une explication peut être trouvée ici: mise à l'Échelle des Images dans IE8 avec CSS max-width
Le code est comme suit:
CSS:
.entry img {
max-width:615px
height:auto;
}
SCRIPT
var imgs, i, w;
var imgs = document.getElementsByTagName( 'img' );
for( i = 0; i < imgs.length; i++ ) {
w = imgs[i].getAttribute( 'width' );
if ( 615 < w ) {
imgs[i].removeAttribute( 'width' );
imgs[i].removeAttribute( 'height' );
}
}
Maintenant, j'ai tendance à utiliser jQuery autant que possible, de résoudre cela, j'ai utilisé quelques fonctions différentes pour cible IE8 et me rendre la vie plus facile. J'ai aussi trouvé que la solution a presque fonctionné, mais pas tout à fait. J'ai joué avec elle jusqu'à ce que j'ai pu atteindre les résultats que je cherchais. Ma solution est la suivante:
JQUERY:
var maxWidth = 500;
function badBrowser(){
if($.browser.msie && parseInt($.browser.version) <= 8){
return true;
}
return false;
}
if(badBrowser()){
$('img').each(function(){
var height = $(this).height();
var width = $(this).width();
if (width > maxWidth) {
var ratio = (maxWidth /width)
$(this).css({
"width":maxWidth,
"height":(ratio*height)
});
$(this).removeAttr('width');
$(this).removeAttr('height');
}else{
$("#cropimage").css({
"width":width,
"height":height
});
}
});
}
Je l'utilise pour cible une image spécifique de la fonction de charge, mais il peut être ajouté à tout document prêt ou de la fenêtre de la fonction de charge ainsi.