AW: PNG Format im Explorer?!
*auchmalmeinensenfdazugeb*
es gibt 2 verschiedene ansätze transparente pngs im IE < 7 zu behandeln
1. das png ist als hintergrund via css (background: url(blabla/grafik.png))
gesetzt. z.b. für einen <div> tag
in diesem fall kann man ein einfaches workaround mit dem im IE integrierten alphaimageloader nehmen
Code:
.start_marked{ //für mozilla & co
height : 200px;
width : 50px;
background : url (img/start_Active.png);
}
* html .start_marked{ //extrawurst für ie
background : none;
filter : progid:DXImageTransform.Microsoft.AlphaImageLoader(src='img/start_Active.png', sizingMethod='scale');
}
wichtig hierbei: alles was mit
* html anfängt wird NUR vom IE gelesen.. mozilla und konsorten ignorieren diese passage vollständig.. d.h. du musst für diese browser dieselbe css klasse nocheinmal definieren. (normalerweise designe ich alles fertig für mozilla und überschreibe dann lediglich das background attribut wie in meinem beispiel oben zu sehen ist)
2. das png soll als klickbares objekt.. z.b. für einen button o.ä. eingebunden werden.
also z.b. über einen <img> tag
in diesem fall hilft soweit mir bekannt ist nur javascript... nicht gerade schön... aber es hilft
dabei handelt es sich dann auch um die bereits angesprochene funktion fixPNG
edit:
soweit ich weiß ist diese nicht von irgendwem mit einem uhrheberstempel versehen... daher poste ich den inhalt jetzt mal.. wenn das ein problem ist bitte bescheid geben oder rauslöschen.
Code:
<!--[if gte IE 5.5000]>
<script language="JavaScript"> var ie55up = true </script>
<![endif]-->
<script language="JavaScript" type="text/javascript">
<!--
function fixPNG(myImage) // correctly handle PNG transparency in Win IE 5.5 or higher.
{
if (window.ie55up)
{
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; cursor:pointer;" + myImage.style.cssText
var strNewHTML = "<span style=\" ;\"" + imgID + imgClass + imgTitle
strNewHTML += " style=\"" + "width:" + myImage.width + "px; height:" + myImage.height + "px;" + imgStyle + ";"
strNewHTML += "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
strNewHTML += "(src=\'" + myImage.src + "\', sizingMethod='scale');\"></span>"
myImage.outerHTML = strNewHTML
}
}
//-->
</script>