IE6: Как получить встроенные образы base64 для работы с IE6?
Как мне заставить IE6 отображать встроенные изображения с кодировкой base64?
<img src="data:image/png;base64,....." />
Это работает в Firefox/Chrome/Safari, но не в IE6.
Ответы
Ответ 1
Мое решение работает плавно на IE6. Это может помочь вам!
<!--
Content-Type: multipart/related; boundary="=_data-uri"
-->
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
#pic {
width:670px;height:710px;
background-image: expression("url(mhtml:" + window.location + "!locoloco)");
}
</style>
</head>
<body>
<div id="pic" ></div>
<div id=test style="display: none;">
--=_data-uri
Content-Location:locoloco
Content-Transfer-Encoding:base64
iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8 /w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==
--=_data-uri--
</div>
</body>
</html>
Ответ 2
Установите Google Chrome Frame
Серьезно, вы не можете. IE6 не поддерживает встроенные изображения base64.
Ответ 3
IE6 нуждается в выражении для правильной интерпретации изображений с кодировкой base 64. Дин Эдвардс описывает решение здесь: http://dean.edwards.name/weblog/2005/06/base64-sexy/
Примечание: это очень уродливый взлом. Во-первых, мы помещали код изображения в наш CSS; с этим решением вам нужно либо разместить презентационные данные в Javascript, либо поведенческие данные в вашем CSS. Неприятный, но необходимый.
Ответ 4
Если это не относится к корпоративной настройке, я бы сказал, что просто снижайте поддержку IE6, и люди устанавливают Chrome Frame если они настаивают на использовании такого устаревшего браузера.
Ответ 5
Вы можете использовать base64 в CSS, по крайней мере.
Пожалуйста, посмотрите: http://www.phpied.com/mhtml-when-you-need-data-uris-in-ie7-and-under/
Возможно, больше исследований могло бы помочь использовать mhtml://для встроенных изображений.
Ответ 6
Изображения base64 отображаются в IE6 и IE7... в последнем я нашел простое решение, когда вы используете кодированные изображения в css.
"напишите два атрибута в одном классе. Используйте специальные браузеры css browser
Я объясню это ниже.
<div class="myClass"> </div>
<style>
.myClass{
background=url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAHCAYAAADam2dgAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAySURBVHjaYlSdd/4/AwQwQml0PgMTHsn/yIoYCCmEKcKrEFkRTrcxEVIAs46g7wACDACraA+g90OOjwAAAABJRU5ErkJggg%3D%3D');
/* Above property will work for all browsers*/
*background=url('give real path_to_image');
/* This will work only for ie6 and ie7 */
}
</style>
Ответ 7
Это может быть быстрое исправление, чтобы снова получить изображения Base64 в IE6:
Исправление образа Base64 для Internet Explorer
* Извините за неработающую ссылку, теперь идет правильно!
Я думаю, что это неинтрузивный способ заставить все работать снова. Он действительно восстанавливает изображения после того, как у вас есть те сломанные изображения (сломанный значок), которые уже отображаются в IE.
Ответ 8
Orginal
Я не верю, что IE6 поддерживает встроенные данные для тега <img/>
. Однако вы можете попробовать другой формат, например GIF или JPG.
ИЗМЕНИТЬ
Учитывая тот факт, что IE навсегда помог точно поддерживать PNG (все еще дискуссионный), можно легко определить, что PNG может не поддерживаться в виде встроенного формата данных для тегов <img/>
. С учетом сказанного, goto **ORIGINAL**