Page 1 sur 1

astuce png pour IE

Posté : 27 nov. 2006, 18:03
par mcorgnet
Bonchour !

en me balladant sur un site, j'ai fini par trouver ce code, qui permet de gérer la transparence png sous IE :

Code : Tout sélectionner

/** * gère la transparence PNG * @access public * @return void **/ function correctPNG() // correctly handle PNG transparency in Win IE 5.5 or higher. { for(var i=0; i<document.images.length; i++) { var img = document.images[i] var imgName = img.src.toUpperCase() if (imgName.substring(imgName.length-3, imgName.length) == "PNG") { var imgID = (img.id) ? "id='" + img.id + "' " : "" var imgClass = (img.className) ? "class='" + img.className + "' " : "" var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' " var imgStyle = "display:inline-block;" + img.style.cssText if (img.align == "left") imgStyle = "float:left;" + imgStyle if (img.align == "right") imgStyle = "float:right;" + imgStyle if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle var strNewHTML = "<span " + imgID + imgClass + imgTitle + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>" img.outerHTML = strNewHTML i = i-1 } } } window.attachEvent("onload", correctPNG);
Cadeau pour ceux qui ont galéré avec IE (donc tout le monde, j'imagine).

source :

http://forum.crystalxp.net/lofiversion/ ... t7715.html

Posté : 27 nov. 2006, 18:05
par Cyrano
Merci m'sieur,
je déplace ça vers le forum "Vos contributions" où il aura davantage sa place :)

Posté : 27 nov. 2006, 19:02
par fab
au passage on aura bientot plus ce problème quand tous le monde aura fait la migration vers IE7 car il gere nickel la transparence presque de quoi me faire aimer IE :p

Posté : 27 nov. 2006, 19:25
par jojolapine
IE7 gère le png-28, mais de la à dire qu'il le gère bien, regarde cette page par exemple: http://www.siteduzero.com/designs.html?design=3

Posté : 27 nov. 2006, 19:46
par albat
24, pas 28 ! :langue:

Posté : 27 nov. 2006, 19:56
par jojolapine
pardon je m'ai trompé =P~