Наш (любимый) дизайнер продолжает создавать PNG файлы с прозрачным фоном для использования в наших приложениях. Я'хотел бы убедиться, что эта особенность PNG работает и в "старых" браузерах. Какое лучшее решение?
редактировано ниже
@mabwi & @syd - Согласен ли я с использованием PNG или нет - не суть важно. Это проблема, которую мне нужно решить!
@Tim Sullivan - IE7.js выглядит довольно круто, но я'не думаю, что хочу вносить все остальные изменения в приложение. Я'хотел бы получить решение, которое устраняет исключительно проблему PNG. Спасибо за ссылку.
Вот отличная статья, которая объясняет и показывает, как работать с прозрачностью PNG в старых браузерах: http://www.alistapart.com/stories/pngopacity/.
I' ve нашел то, что надеется быть очень хорошим решением здесь: Единица Интерактивный-> Лаборатории-> Единица PNG Фиксирует
обновление Единица, PNG также показан на список PNG, закрепляет варианты на NETTUTS
Вот основные моменты с их веб-сайта:
Также paletted 8-битный PNG с полная альфа-прозрачность существует, вопреки тому, какой Фотошоп и КАНИТЕЛЬ могут убедить Вам, и они ухудшаются лучше в IE6 – это просто сокращает прозрачность к 1 биту. Используйте [pngquant] (http://pngquant.org/), чтобы произвести такие файлы от 24-битного PNGs.
I' ve связывался с попыткой сделать место с .pngs и этим просто isn' t стоящий того. Место становится медленным, и Вы используете хакерские проникновения это don' t работают 100%. Here' s хорошая статья о некоторых вариантах, но мой совет должна найти способ заставить gifs работать до Вас don' t должны поддержать IE6. Или просто дайте IE6 ухудшенный опыт.
@Hboss
that' s все великолепные, если Вы знаете точно все файлы (и размеры каждого) это you' ре, собирающееся показывать - it' d быть королевской болью, чтобы утверждать, что файл CSS, но я предполагаю it' d быть возможным. Когда Вы хотите начать использовать прозрачный PNGs в некоторых очень общих целях: a) непредвиденная графика, такая как символы (возможно, отличающегося размера), которые работают над любым фоном и b) повторение фонов; тогда you' ре ввернуто. Каждая работа I' ve, который попробовали, поразил камень преткновения в какой-то момент (can' t выбирают текст, когда фон прозрачен, sometimes изображения показаны в дурацких размерах, и т.д. и т.д.), и I' ve нашел это для максимальной надежности I' ll должны вернуться к gifs.
Мой совет состоит в том, чтобы дать хакерскому проникновению прозрачности PNG выстрел, но в то же время понять это it' s определенно не прекрасный - и просто помнят, you' ре, наклоняющееся назад для пользователей браузер, которому более чем 7 лет . Что я делаю в эти дни, дают пользователям IE6 всплывающее окно во время их первого визита в место, с дружественным напоминанием, что их браузер устарел и doesn' t предлагают особенности, требуемые современными веб-сайтами, и, хотя we' ll стараются изо всех сил давать Вам лучшее, you' ll получают лучший опыт от нашего сайта и Интернета в целом, если Вы ЧЕРТОВСКИ ХОРОШО МОДЕРНИЗИРОВАЛИ.
Используя PNGs в IE6 едва больше трудное, чем какой-либо другой браузер. Вы можете поддержать все это в своем CSS без JavaScript. I' ve, замеченный это хакерское проникновение, показанное прежде...
div.theImage {
background : url(smile.png) top left no-repeat;
height : 100px;
width : 100px;
}
* html div.theImage {
background : none;
progid:DXImageTransform.Microsoft.AlphaImageLoader(src="layout/smile.png", sizingMethod="scale");
}
I' m не так уверенный это - действительный CSS, но в зависимости от места, он может не иметь значения так.
(it' s стоящий замечания, что URL для первого изображения основан на справочнике таблицы стилей, где второе основано на справочнике просмотренной страницы - таким образом, почему они не соответствуют),
Если Вы экспортируете свои изображения PNG-8 от Фейерверков тогда they' ll действуют то же как gif изображения. Так они won' t выглядят погаными и серыми, прозрачность будет прозрачностью, но ими won' у t есть полное 24-битное очарование, которое делают другие браузеры.
Не мог бы полностью решить Вашу проблему, но по крайней мере Вы можете получить часть путь там просто реэкспортировать их.
Я полагаю, что все браузеры поддерживают PNG-8. Не альфа смешалась, но у нее действительно есть прозрачные фоны.
я мог бы ошибиться, но I' m вполне уверенный IE6 и менее справедливый don' t делают прозрачность с файлами PNG.
Вы сортируете, и Вы сортируете, not' t.
У IE6 нет поддержки с рождения их.
Однако у IE есть поддержка сумасшедшего обычая javascript/css и объектов COM (который является, как они первоначально осуществили XmlHttpRequest),
Все эти хакерские проникновения в основном делают это:
Одной вещью думать о являются почтовые клиенты. Вы часто хотите прозрачность PNG-24, но в Аутлуке 2003 с машиной, используя IE6. Почтовые клиенты won' t позволяют уловки JS или CSS.
Вот хороший способ обращаться с этим. http://commadot.com/png-8-that-acts-like-png-24-without-fireworks/
Я могу ошибаться, но я уверен, что IE6 и меньше просто не делают прозрачность с PNG-файлами.
У меня есть два "решения", которые я использую. Либо создавать файлы GIF с прозрачностью и использовать их везде, либо использовать их только для IE 6 и старше с условными таблицами стилей. Второй вариант действительно работает только в том случае, если вы используете их в качестве фона и т.д.