2009-11-25 3 views
0

я имею проблему с прозрачностью в детских IE6 .. ниже коде, который должен быть закрепленПоддержка прозрачности PNG в ie6!

<input type="image" alt="rtf" src="/components/i/images/icons/rtf.png"/> 

я видел несколько сообщений на этом форуме, но я не могу четко понять .. может любой желающий пройдите меня через процесс его крепления? thankx ..

+9

приветственное к радостям IE6 – Yacoby

+0

duplicate - http://stackoverflow.com/questions/697682/ie6-png-transparency – silent

+0

Я знаю, что есть темы lotta для этой темы, но я не могу их понять .. thatz почему я начал новую тему, чтобы кто-то мог помочь меня.. – Sam

ответ

1

В основном IE6 не выполняет альфа-прозрачность должным образом. Это позволяет делать прозрачность с изображениями PNG-8 (с булевской прозрачностью), но вообще не может обрабатывать PNG-24.

Это позиция по умолчанию.

Если вам нужна полноформатная альфа-прозрачность в IE6, то лучшим вариантом будет использование скрипта, который вводит хаки, которые заставляют его работать. Существует supersleight, что довольно медленно. Или лучший вариант, который равен DD_BelatedPNG, который не полагается на AlphaImageLoader.

0

Я должен указать, что IE очень плохо работает при использовании прозрачных PNG, если у вас есть исправление. Это связано с тем, что у AlphaImageLoader есть главный недостаток, который может привести к зависанию браузера. This link has more details about a fix that works around the lockukp. Однако в моем тестировании даже этого обширного исправления было недостаточно. Мы по-прежнему испытывали блокировки браузера IE6 при просмотре страниц с помощью PNG.

Вы можете обойти проблему по-другому, с грациозной деградации в IE, используя 8-битные PNG с альфа-каналами. Не многие инструменты могут это сделать, но вы можете найти информацию here и here. 8-битные изображения не будут разбивать IE и будут хорошо выглядеть в IE7 + и во всех других браузерах. IE6 будет видеть изображения без прозрачных частей. Это может быть приемлемо для вашего дизайна. Если нет, я бы подумал о том, чтобы изменить дизайн, если вы вообще интересуетесь IE6. Это просто нестабильно.

0

Не используйте PNG24 для значков. Преобразуйте значки в PNG8 и раздавите метаданные. Это решает проблему IE6 Bug, экономит трафик и делает вашу страницу быстрее.

Вы можете использовать pngout для преобразования. Для измельчения PNGs вы должны использовать pngout, advpng, optipng и pngcrush

pngcrush -rem gAMA -rem cHRM -rem iCCP -rem sRGB -brute -l 9 -max -reduce -m 0 -q FILE 
optipng -o7 -q FILE 
pngout FILE -q -y -k0 -s0 
advpng -z -4 FILE 

если часть с дроблением мета-данные к сложному, только сохранить изображение как PNG8 :)

Смежные вопросы