Здравствуйте Гость!
Вместо того, чтобы проклинать то место, где ты упал, следовало найти то, на чём ты поскользнулся.
Пауло Коэльо
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