Структура моего HTML в основном:
<div id="featured">
<a href=""><img src="" alt="" /></a>
<div class="image-description">text</div>
</div>
С css:
#featured { width: 800px; height: 250px; text-align: center; position: relative; }
img { width: auto; height: 250px; }
.image-description { position: absolute; bottom: 10px; }
У меня есть какой-то javascript, динамически модифицирующий мой html и прекрасно работающий в любом другом браузере, кроме IE6 и IE7. Он отлично работает в IE8 +.
В IE6 и IE7, кажется, препятствует отображению изображения. Я попытался отладить в IE7 с помощью инструментов веб-разработчика, и элемент изображения есть, но по какой-то причине не показывается Я никоим образом не изменял видимость или отображение элемента изображения или элементов div контейнера.
Комментируя мой javascript, я сузил его до:
$featured = $('#featured');
// calculate var $desc_left now to eliminate/reduce description div "jumping"
var $desc_left = ( ( $featured.width() - $featured.find('img').width() ) / 2 ) + 10;
$featured.find('.image-description').css('left', $desc_left);
$featured.find('img').load(function() {
// calculate var $desc_left again to make sure all browsers get the correct widths, like webkit browsers
var $desc_left = ( ( $featured.width() - $featured.find('img').width() ) / 2 ) + 10;
$featured.find('.image-description').css('left', $desc_left);
});
Изображения в конечном итоге появляются, если я продолжаю перезагружать страницу. Комментируя все это, IE7 нормально показывает изображение. Протестировано путем удаления всей истории / кэша браузера после изменения js-кода.