Ничего себе, какая боль IE всегда кажется. Хотя есть принятый ответ, я обнаружил, что это не решило мою проблему.
После долгих поисков я обнаружил, что способ исправить это - удалить атрибуты высоты и ширины из соответствующих изображений. Объяснение можно найти здесь: Scaling Images in IE8 with CSS max-width
код выглядит следующим образом:
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');
}
}
Теперь я предпочитаю использовать JQuery, как насколько это возможно, чтобы решить эту проблему, я использовал несколько разных функций для нацеливания на IE8 d облегчить мою жизнь. Я также обнаружил, что решение почти сработало, но не совсем. Я играл с ним, пока не смог добиться результатов, которые я искал. Мое решение заключается в следующем:
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
});
}
});
}
Я использую это для нацеливания на определенную функции загрузки изображения, но он может быть добавлен к любому документу готов или нагрузка окна функции, а также.
Тэг это с помощью CSS, пожалуйста. –