Здравствуйте Гость!
Подумай, как трудно изменить себя самого, и ты поймешь, сколь ничтожны твои возможности изменить других
Вольтер
Anime Sweet Home
AnimeWallpapers

Reply to this topicStart new topicStart Poll
 
 > Проблема с ПНГ, а именно с эксплорером 6.х и ниже 
M  SyntaT
18 Август 2007 20:27  
Сообщ. #1  
avatar

Модератор
Сообщений: 1 361
Город: Санкт-Петербург

Кавайность: 16

Хочу на один из форумов прилепить красивую хреновину.. Всё красота, тока вот если делать её в Гифе, то выглядит неочень (256 цветов прозрачность обеспечить не могут), а в ПНГ всё выглядит зашибись. НО. грёбаный ИЕ не понимает прозрачности пнг... Как это побороть?

Вот так должно выглядить в Тру браузере..
user posted image
А вот так выглядит в эксплорере..
user posted image
Сейчас сделал гифом, но гиф это всего 256 цветов, ни о какой красоте тут думать не приходицо.. =(

И да наступит день .. и да наступит ночь..
И да наступит сессия.. и живые позавидуют мёртвым.

user posted image
Offline PMEmailUsers WebsiteICQ
 
M  SyntaT
18 Август 2007 22:47  
Сообщ. #2  
avatar

Модератор
Сообщений: 1 361
Город: Санкт-Петербург

Кавайность: 16

ТАк.. кароч меня ужо научили, но терь если кому тут понадобится))
Код  
html>
<head>
<!--[if lt IE 7]>
<![if gte IE 5.5]>
<script type="text/javascript" src="/fixpng.js"></script>
<style type="text/css">
.iePNG { filter:expression(fixPNG(this)); }
.iePNG A { position: relative; }
</style>
<![endif]>
<![endif]-->
</head>
<body>
<div ><img style="position:absolute; left: 155px;" class="iePNG" src="4.png" width="348" height="375"></div>
</body></html>

Во как)) И ещё 1 жаба -скрипт в корень сайта и 1пиксельный гиф туда же..
ВОт скрипт:
Код  
function fixPNG(element)
{
   if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))
   {
       var src;
       
       if (element.tagName=='IMG')
       {
           if (/\.png$/.test(element.src))
           {
               src = element.src;
               element.src = "/blank.gif";
           }
       }
       else
       {
           src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i)
           if (src)
           {
               src = src[1];
               element.runtimeStyle.backgroundImage="none";
           }
       }
       
       if (src) element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";
   }
}

И да наступит день .. и да наступит ночь..
И да наступит сессия.. и живые позавидуют мёртвым.

user posted image
Offline PMEmailUsers WebsiteICQ
 
M  Leonhart-sama
19 Август 2007 8:53  
Сообщ. #3  
avatar
†Tenshi†
Техник, он же Кулибин

Администратор
Сообщений: 3 143
Город: Москва

Кавайность: 76

Я бы сделал иначе, поскольку ПНГ при твоем размере больно дофига весит и сие счастье довольно сильно трафик отъест.
Я бы сделал так
HTML  

<div style="float:right;position:absolute; z-index:80; left: 401px; top: 101px;">
<img alt='' src="style_images/1/welcome.png"></div>


И вроде никаких проблем с прозрачностью ПНГ не возникает, проверял.

Накормите меня до отвала, а не то я завою, а не то я залаю, а не то я кого-нибудь съем!
Offline PMEmailUsers WebsiteICQ
 
M  SyntaT
19 Август 2007 10:31  
Сообщ. #4  
avatar

Модератор
Сообщений: 1 361
Город: Санкт-Петербург

Кавайность: 16

В Опере, лисе и эксплорере 7й версии не возникнет. Траблы в эксплорере ниже 7ки.. Собсна из-за этого и весь геморой..
Вот собсна суть... PNG, альфа прозрачность и Internet Explorer

А вот собсна одно из решений.. Tigir.com о web-технологиях / Статьи - PNG-прозрачность в I

И да наступит день .. и да наступит ночь..
И да наступит сессия.. и живые позавидуют мёртвым.

user posted image
Offline PMEmailUsers WebsiteICQ
 
M  Leonhart-sama
19 Август 2007 11:34  
Сообщ. #5  
avatar
†Tenshi†
Техник, он же Кулибин

Администратор
Сообщений: 3 143
Город: Москва

Кавайность: 76

Нет у мну под руками 6ки и ниже чтобы проверить, а виртуальник поднимать лень :asease:
А вообще ПНГ 24 битный не катит для веб, тяжелый слишком, гиф рулит. Ща вроде как мелкомягкие обещаются новый стандарт изображений ввести, он типа будет зе бест для веб (поддержка прозрачности и малый размер), но все хорошо, но боюсь старые браузеры поддерживать его не будут :sikusiku:
Но вот с 7м експлорером всетаки молодцы мелкомягкие, сделали более менее приемлемый браузер, им даже пользоваться можно. Думаю в будущем они смогут его вообще до ума довести, и IE завоюет свое место как самый популярный браузер.

Накормите меня до отвала, а не то я завою, а не то я залаю, а не то я кого-нибудь съем!
Offline PMEmailUsers WebsiteICQ
 

Topic Options Reply to this topicStart new topicStart Poll