Вход
 
Главная Форум Каталог веб-мастеров Регистрация SEO библиотека
Разделы сайта
Поиск по сайту
Почта @admin-club.ru
Логин:
Пароль:
· завести почту
Новое
В картинках
см. так же графику
А так же
Антикризиный безлимитный тариф - подключение adsl. Подключение Adsl. · Эксклюзивная лазерная резка по специализированном оборудовании. · Магазин сантехники: акриловые ванны Ravak - выгодная покупка, со склада.
 
Прозрачный PNG в Internet Explorer 3 ноября 2008
Не все верстальщики с «рождения» знают, что самый популярный и распространенный браузер Internet Explorer не отображает PNG правильно, точнее сказать он не отображает прозрачность графики «самостоятельно». Для достижения одинакового отображения страницы во всех браузерах нужно хорошо потрудиться, поломать голову не один час. Раньше много времени я тратил на технологию обхода использования PNG: сделать тень блока на странице можно и с помощью других графических форматов, но это дает много «лагов» в качестве верстки страницы, а значит и снижает уровень профессионализма верстальщика (следовательно, его карьеру и гонорар). В данной статье я расскажу вам, как сделать PNG прозрачным в IE, прибегая только к помощи JavaScript и CSS, PNG – как просто вставленной картинки, а так же как фон. Верстальщик, вот тебе плюс один к знаниям.
Сразу уточним, что Opera, FireFox и подобные браузеры отображают PNG штатно.
Рассмотрим случай «ДО» применения приема.

Исходная картинка в формате PNG.
Прозрачный PNG в Internet Explorer


Рис. 1. «Звезда – прозрачный объект с внешним свечением»
Прозрачный PNG в Internet Explorer


Рис.2. Вот как Рис.1 отображается в браузерах FireFox, Opera, IE. Очевидно, что IE не отображает PNG правильно.
Прозрачный PNG в Internet Explorer


Рис.3. А вот после применения приема, как видите теперь PNG стал прозрачным.
Прозрачный PNG в Internet Explorer


И так, перейдем, наконец то к применению приема.
1. Вам нужны файлы “null.gif” и “pngie.js”. Они должны находиться в одной папке, или хотя бы тогда прописывайте адрес к файлу «null.gif» в «pngie.js»
2. В страницу вставляйте код вызова скрипта, в самый конец страницы:

<script type="text/javascript" language="JavaScript" src="iepng.js"></script>

3. В страницу добавьте стиль:

<style>
IMG.iePNG { filter:expression(fixPNG(this)); position: relative; }
</style>

4. Задайте класс для картинки “iePNG”.
5. Задайте картинке обязательно ее истинные размеры с помощью параметров width, height.
6. Готово.
Интересные аспекты применения:
1. Вы можете вставлять CSS прямо в стиль объекта
Например

<img src=”star.png” width=100 height=100 style=” filter:expression(fixPNG(this)); position: relative;”>

2. Вы можете делать картинку фона прозрачной!
Например

<style>
div.teny{background-image:url(‘teni.png’); filter:expression(fixPNG(this)); position: relative;  }
</style>


Скачайте архив в нем находятся 2а нужных вам файла и пример применения - png.zip [9,26 Kb] (cкачиваний: 1088)
 - RedRat  - 10604  - 9  - Распечатать
miramakl:
Уметь слушать тишину - значит быть способным услышать бесконечность, как говорил Моцарт, на вашем сайте тишину не послушаешь, но много интересного при этом подчерпнуть можно - за что и спасибо большое, удачного вебмастеринга :)
19 июля 2009 18:41
toldora:
Что то не понимаю тут ничего
2 апреля 2009 13:38
Трион:
попробую зделать wink
27 марта 2009 03:21
Cabalist:
Спасибо конечно за статью!Но у меня есть сайт на ДЛЕ и прозрачный png вставляется через background в div,и никакой прозрачности я не наблюдаю в ИЕ 6,так вот как быть в этом случае?Может быть в ДЛЕ надо в какую-нибудь определённую папку скрипт класть?Только вот в какую?:)В общем помогите разобраться с этим вопросом плиз)
15 января 2009 16:21
Sergyk89:
а как поступать в таком случии как сделать прозрачной картинку

<td><div align="center"><a href="http://сайт" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image2','','
;/templates/Transformer/images/menu/glavnay-1.png',1)"><img src="/templates/Transformer/images/menu/glavnay.png" name="Image2" width="143" height="57" border="0"></a></div></td>
14 января 2009 01:22
RedRat:
Всегда пожалуйста! Приходите еще! smile
14 ноября 2008 21:12
Китс:
smile
Огромное спасибо!!! Из всего найденного сработало только это. Респектище!
14 ноября 2008 20:40
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
© 2007-2011
«Клуб Админов»

Обратная связь
support@admin-club.ru

Разделы Категории Инфо Публикации
Новости Статьи О сайте Облочко Регистрация
Форум Скрипты Статистика Комментарии Вход
Почта Загрузки Реклама Артикус Пароль
Докс CMS's Правила
СЕО Шаблоны
Дизайн сайта www.artoflogic.ru Rambler's Top100