Solución sencilla para arreglar el problema de transparencia en los png's en IE.
Si bien he decido hace un buen tiempo atrás no molestarme más en que los sitios se vean correctamente en Internet Explorer 6 o inferior, siempre se aparece la necesidad de darle importancia al peor navegador conocido por la web. En este caso, para corregir el problema que tiene IE 6 y 5.5 con los png's transparentes.
Para solucionar este bug de IE debes bajarte este archivo, y descomprimirlo, para subir los archivos iepngfix.htc y blank.gif a tu servidor en las carpetas que correspondan (ten en cuenta que quizás sea necesario editar el archivo iepngfix.htc para indicarle donde has subido la imágen gif transparente blank.gif). Además, en el archivo comprimido encontrarás un archivo iepngfix.html que te explica paso a paso como usarlo, pero con este post te sobrará ;-).
Con iepngfix podrás corregir tanto las imagenes llamadas con el tag <img alt="" /> como asi también las imagenes de fondo utilizadas en CSS, y para ello solo debes agregar una sola línea en tu archivo css:
Ten en cuenta de pasar la url correcta de donde se encuentra el archivo iepngfix.htc.
Si deseas hacer que las imagenes llamadas con el tag <img alt="" /> respeten el fondo transparente en IE, te bastará con solo este código en tu archivo css:
behavior: url(iepngfix.htc);
}
Si tienes algún elemento css con una imágen de fondo, solo necesitas agregarle el behavior, por ejemplo si tienes una clase llamada logo con una imágen de fondo, solo debes agregarle:
background: url(images/logo.png) no-repeat left top;
behavior: url(iepngfix.htc);
}
Bueno, espero que les sirva, ya no tendrán más ese fondo gris en IE 6, y si, eso es todo!! :-).
Fuente: www.twinhelix.com


2 Comentarios:
Maxi G:
11 de Noviembre de 2009 a las 02:06:36Excelente info, justo estaba teniendo este problema, me sacaste un dolor de cabeza, abrazo!
Matias:
12 de Noviembre de 2009 a las 01:45:42Las cosas que hay que seguir haciendo para dejar conformes a los clientes prehistóricos, je je!