IE6 фильтр альфа-загрузчик png24 замораживания контекста - PullRequest
1 голос
/ 21 июля 2009

Это действительно неизвестная проблема для многих людей. Я хотел бы задать вопрос и сделать его легко доступным для других, и, возможно, кто-то из вас знает решение этой проблемы.

Все мы, наверное, знаем, что есть проблема с альфа-прозрачностью в PNG24 в IE6 (до сих пор используется многими людьми в сети ..). Есть как минимум несколько известных решений, как это решить, но у всех них есть свои проблемы, которые я хотел бы описать там:

1. Использование progid: DXImageTransform.Microsoft.AlphaImageLoader:

Это наиболее распространенный способ создания изображений, отображаемых в IE6. Проблема в том, что он использует DirectX, чтобы показать это. Так что в основном DX сначала нужно скачать файл из сети, а затем отрендерить его. Эта загрузка блокирует контекст браузера на некоторое время. Но если у вас много изображений - это означает, что ваша страница может быть заморожена даже на ... несколько минут (это происходит с одним проектом хотя бы один раз).

http://blogs.cozi.com/tech/2008/03/transparent-pngs-can-deadlock-ie6.html http://www.stum.de/2008/12/01/do-not-use-alphaimageloader-to-fix-transparent-pngs-in-ie6/

2.Использование VML.

Вы также можете использовать этот обходной путь. Однако это приводит к неприятному эффекту рендеринга серого прямоугольника в фоновом режиме, а затем правильного изображения, что также приводит к двойной загрузке файлов изображений - однако это может быть связано с плохой реализацией, поэтому необходимо проверить.

3.Использование PNG8.

Просто забудьте о решениях и попробуйте использовать PNG8, если все правильно подготовлено, все еще выглядит хорошо.

Если кто-нибудь знает какое-либо другое решение, дайте ответ здесь!

1 Ответ

0 голосов
/ 17 ноября 2009

Вы обязательно должны взглянуть на http://www.dillerdesign.com/experiment/DD_belatedPNG/

...