Я столкнулся с ситуацией в проекте, которая беспокоила меня долгое время. Почему в IE6 исчезли некоторые значки одного и того же изображения PNG8? В то время я подозревал, что это проблема с кешем или хостами. Неоднократное открытие и закрытие браузера все равно не удавалось, и после повторных тестов я наконец нашел причину.
Проблема заключается в самом изображении PNG8. Следующий пример моделирует ситуацию. При просмотре с помощью IE6 вы обнаружите, что четыре значка во втором ряду невидимы. Демо
Оказывается, четыре значка ниже настроены на 90% «Альфа-прозрачности» (FW может сохранять «Альфа-прозрачность» при экспорте PNG8, но PS не может этого сделать).
Полупрозрачные значки Alpha можно нормально просматривать в обычном программном обеспечении для просмотра или в браузерах FF, Chrome, Safari, Opera, IE7 и выше, за исключением IE6.
Фактически, есть способ заставить IE6 поддерживать «Альфа-прозрачность» PNG8, метод тот же, что и фильтр IE PNG32. Демо
Из приведенных выше результатов мы узнали, что проблема связана с «Альфа-прозрачностью» png8. И на этот раз PNG8 отличается от png32 тем, что браузеры, которые не поддерживают полупрозрачность png (например, ie6), автоматически понижают уровень до полностью прозрачного (например, gif) вместо серого фона, как png32.