PNG transparente no Internet Explorer
<< Post Anterior Colocando arquivo do PowerPoint no Youtube |
Próximo Post >> Como evitar riscos na tela do seu PDA/Smartphone |
Quando eu descobri que o Internet Explorer não tem suporte nativo para transparência do PNG, quase tive um enfarto! Para quem faz páginas dinâmicas, isso diminui muito as possibiliidades de fazer alguma imagem aleatória interagir com o site!
Nesse meu caso a ficura troca constantemente a cada reload, e eu não queria fazer todas as figuras com o fundo (sem transparência).Mas procurando na internet que resolveu facilmente o problema
Para baixar ele em TXT, clique AQUI.
Como usar:
1- baixe o arquivo, copie o conteudo e cole no HEAD em todas as páginas que você precisar
ou
1- salve esse arquivo como scritp_transp.js
2- coloque no head das páginas a chamada
<script language=”JavaScript1.2″ src=”scritp_transp.js”></script>
Com isso você evita downloads desnecessários do mesmo script (ele baixa somente na primeira visita)
Veja também
10 Comentários

Jonny Ken Itaya, 32 anos, diretor de tecnologia da Kingo Labs, criador do Migre.me
e do Podpods, além de ex-biólogo. Trabalha há 12 anos com informática,
principalmente na área de edição de fotos, animações
flash, administração de rede e programação PHP. Atualmente
participa do Decodificando, podcast que fala de aplicação de leis
sobre as novas tecnologias (informática e biologia). 











Utilizei a dica para o PNG transparente no IE. Funcionou… mas eu faço o mapeamento da imagem e o IR não reconhece…
Tem alguma dica?
Obrigado
Responder
Funcionou tranquilo aqui. Nem esticou minha imagem.
Valeu.
Responder
odieiiiiiiii
Responder
testei, mas a imagem ficou distorcida, alongada.
e o a imagem de fundo qdo passa mouse tbm ficou alterada (posição errada)
Responder
hummmmmmmmmmmmmmm… ai eu teria que ver o código fonte da página…
Faça um teste simples com o script, um fundo qualquer a imagem png. Se acontecer o problema, me avise…
Responder
Olá, estranho não funcionou aqui.
Responder
Tem um jeito muito mais fácil.
Primeiro faca uma imagem transparente chamada blank.png pode ser com 1×1px
Depois é só colocar esse código abaixo na TAG style de cada página que tiver png com transparência.
/* Alpha PNG support for IE
——————————
\*/
* html img/**/ {
filter:expression(
this.alphaxLoaded ? “” :
(
this.src.substr(this.src.length-4)==”.png”
?
(
(!this.complete)
? “” :
this.runtimeStyle.filter=
(“progid:DXImageTransform.Microsoft.AlphaImageLoader(src=’” this.src “‘)”)
(this.onbeforeprint=”this.runtimeStyle.filter=”;this.src=’” this.src “‘”).substr(0,0)
String(this.alphaxLoaded=true).substr(0,0)
(this.src=”blank.png”).substr(0,0)
)
:
this.runtimeStyle.filter=”"
)
);
}
html, body {
color:#000;
background:#333333;
}
Pronto, funciona direitinho, sem script pra ter perturbação com gente que usa segurança alta…
Responder
Tem alguma coisa errada nesse código aí
Responder
bom.. andei olhando o primeiro codigo e ele distorce a imagem nesta linha..
+ “(src=\’” + img.src + “\’, sizingMethod=’scale’);\”>”
é so remover o sizingMethod=’scale’ que ele nao distorce a imagem.
Espero ter ajudado.
Abraco.
Responder
Acho que vale a pena você olhar as estatisticas do seu site e ver se os navegadores mais usados já não resolvem esse problema.
Acho que a maioria já dá suporte a PNG transparente.
Valeu!
Responder