хорошо, так что мне удалось решить эту проблему. Ниже приведены подробные сведения об универсальном исправлении (причина, по которой оно работает), а затем об этом подробно рассказывается, как я применил это исправление - которые уникальны для плагина jquery ISOTOPE, который я использую.
Обратите внимание, что сайт предварительного просмотра из исходного сообщения больше не активен, но живой сайт теперь можно посмотреть здесь: http://www.imageworkshop.com/portfolio/
ОБЩИЙ ИСПРАВЛЕНИЕ
проблема вызвана сокрытием изображения в IE с использованием opacity: 0; (не обязательно характерно для затухания в IE, как предлагает большинство других потоков. Я удалил затухание непрозрачности, но все еще имел ту же проблему потому что непрозрачность: 0; использовалась, чтобы скрыть отфильтрованные изображения.
ответ - использовать display: none; , чтобы скрыть изображения для IE.
МОЕ ОСОБЕННОЕ ОСУЩЕСТВЛЕНИЕ ИСПРАВЛЕНИЯ
Использовал шаблон для идентификации старых / проблемных браузеров, используя этот код в файле header.php моей темы WordPress - это добавляет класс ".oldie", когда идентифицируется старый браузер:
<!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
CSS для использования display: none ;, вместо opactiy: 0 для ISOTOPE (обратите внимание, это относится к плагину ISOTOPE, который я использую для скрытия / фильтрации изображений.
.oldie .isotope-hidden { display: none; }
В javascript ISOTOPE вверху укажите, существует ли oldie:
isOldie = $('html').hasClass('oldie');
Затем скажите изотопу, какой sytle использовать:
hiddenStyle: isOldie ? {} : $.Isotope.settings.hiddenStyle,
visibleStyle: isOldie ? {} : $.Isotope.settings.visibleStyle
Вот пример сайта, который показывает это в действии: http://support.metafizzy.co/2011/09-12-ie-trans.html
и объявление javascript для ISOTOPE с этой страницы (обратите внимание, что это проще, чем то, что я использовал на моем сайте)
<script>
$(function(){
var $container = $('#container'),
$photos = $container.find('.photo'),
isOldie = $('html').hasClass('oldie');
$container.imagesLoaded( function(){
$container.isotope({
itemSelector : '.photo',
masonry: {
columnWidth: 200
},
hiddenStyle: isOldie ? {} : $.Isotope.settings.hiddenStyle,
visibleStyle: isOldie ? {} : $.Isotope.settings.visibleStyle
});
});
$('#filters a').click(function(){
$container.isotope({ filter: $(this).attr('data-filter') });
return false;
});
});
</script>