PNG transparente no Internet Explorer(s).
webdesigner No Comments »O formato .png de imagens proporciona efeitos muito legais como transparência e/ou semi-transparência, porém o Internet Explorer 6 interpreta essa transparência de forma deprimente. Infelizmente 60% dos “usuários” de internet no Brasil utilizam o IE6 por preguiça ou medo de atualizar o “sistema” Windows.
Para utilizar imagens .png compatíveis com ie6 e os outros navegadores de verdade você pode utilizar um javascript e chamar a função no própria tag <img>, como no exemplo abaixo.
Exemplo:
<img src=”/img/imagem.png” id=”png01″ onload=”fixPNG(this)” />
O javascript você pode copiar o código abaixo e salvar num arquivo externo. Não se esqueça de carregar o mesmo no código fonte de seu site.
function fixPNG(myImage)
{
if ((version >= 5.5) && (version < 7) && (document.body.filters))
{
var imgID = (myImage.id) ? “id=’” + myImage.id + “‘ ” : “”
var imgClass = (myImage.className) ? “class=’” + myImage.className + “‘ ” : “”
var imgTitle = (myImage.title) ?
“title=’” + myImage.title + “‘ ” : “title=’” + myImage.alt + “‘ ”
var imgStyle = “display:inline-block;” + myImage.style.cssText
var strNewHTML = “<span ” + imgID + imgClass + imgTitle
+ ” style=\”" + “width:” + myImage.width
+ “px; height:” + myImage.height
+ “px;” + imgStyle + “;”
+ “filter:progid:DXImageTransform.Microsoft.AlphaImageLoader”
+ “(src=\’” + myImage.src + “\’, sizingMethod=’scale’);\”></span>”
myImage.outerHTML = strNewHTML
}
}
Perceba que a função faz uma verificação da versão do Internet Explorer, sendo aplicado somente quando o usuário utilizar umas das versões mortais do software, entre a 5.5 e o 6.