После обновления до jQuery 1.4, когда я пытаюсь динамически добавить изображение на страницу с помощью jQuery 1.4 в IE8, изображение теряет правильное соотношение сторон. Похоже, что это влияет только на IE8 (IE7 и Firefox работают отлично) с jQuery 1.4 (1.3.2 работает нормально). Включение файла совместимости jQuery не решает проблему.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" language="javascript" type="text/javascript"></script> <!-- Switching to 1.3.2 fixes the problem --> <!--<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" language="javascript" type="text/javascript"></script>--> <script type="text/javascript"> $(document).ready(function() { var dynImg = $('<img></img>').attr('src', 'http://www.google.com/intl/en_ALL/images/logo.gif'); $('body').append(dynImg); }); </script> <style type="text/css"> img { max-width: 5em; } </style> </head> <body></body></html>
На основании режима несовместимости IE8, изображения с максимальной шириной и высотой: авто Мне удалось исправить проблему, добавив
img { width: auto; height: auto; }
на мой css.
Установить CSS zoom свойство:
zoom
img { zoom: 100%; }