Seite 1 von 1

PNG Bilder Transparent im IE

Verfasst: 29.05.2009 16:28
von atze999
hallo !

ich hab eine frage und zwar , ich arbeite mit firefox und da ist PNG ja schon standard. mein problem ist das mit dem internet explorer die PNG bilder mit hellblauen hintergrund angezeigt werden astatt transparent.

ich habe da was im internet gefunden nur weiss ich nicht genau wie ih das anwenden soll:

<style type="text/css">
img {
behavior: url("pngbehavior.htc");
}
</style>

da steht :

Im Gegensatz zu praktisch allen anderen Browsern kann der Internet Explorer PNG-Bilder, die transparente Teile enthalten, nicht korrekt darstellen. Microsoft bietet zu diesem Problem eine Lösung [1] an, die jedoch nicht zu gebrauchen ist: Das Bild erscheint damit zwar transparent, wird in vielen anderen Browsern nun jedoch nicht mehr angezeigt. Verwendbare Lösungen sind komplexer, jedoch vorhanden: Das Script "PNG Behavior" [2] von "WebFX" verwendet CSS, um die Funktionalität des IMG-Tags zu erweitern. Dabei müssen Sie die erforderlichen Dateien "pngbehavior.htc" und "blank.gif" [3] im selben Ordner ablegen, und folgenden Code im Head-Tag unterbringen:

kann mir da einer helfen ? oder geht das einfacher ?

Re: pngbehavior.htc - PNG Bilder Transparent im IE

Verfasst: 29.05.2009 17:39
von Pyramide
Steht doch da, was du machen musst:
Dabei müssen Sie die erforderlichen Dateien "pngbehavior.htc" und "blank.gif" [3] im selben Ordner ablegen, und folgenden Code im Head-Tag unterbringen

Re: pngbehavior.htc - PNG Bilder Transparent im IE

Verfasst: 29.05.2009 17:46
von atze999
jo aber das ding ist von 2003 :-) hat sich da was geändert bzw gibt es was anderes oder so? und wo schreibe ich die zeile rein?

Re: pngbehavior.htc - PNG Bilder Transparent im IE

Verfasst: 30.05.2009 13:17
von Valerion
jo aber das ding ist von 2003
...und, du kannst es ja mal ausprobieren, oder?...
und wo schreibe ich die zeile rein?
==>
Dabei müssen Sie die erforderlichen Dateien "pngbehavior.htc" und "blank.gif" [3] im selben Ordner ablegen, und folgenden Code im Head-Tag unterbringen
Sprich du schreibst den Code irgendwo zwischen <head> und </head>

Re: pngbehavior.htc - PNG Bilder Transparent im IE

Verfasst: 30.05.2009 14:19
von atze999
also ich habe die 2 dateien jetzt in den template ordner und den imagesset ordner reingehauen ( zur not ). die zeile hab ich im overall_header reingeschrieben. leider keine veränderung. ich bin leider blutiger anfänger wenn es um codes usw geht deshalb frage ich hier wo ich zb die zeile reinschreiben soll :-/

kann mir da einer ein rat geben oder halt was anderes vorschlagen wenn es was besseres gibt ?

update*

ich habe nun ein script gefunden aber es funzt nid so richtig! ich hab das im overall_header reingeschrieben vor dem </head> tag.

Code: Alles auswählen

<!--[if lt IE 7]>
<script language="JavaScript">
function correctPNG() // correctly handle PNG transparency in Win IE 5.5 & 6.
{
   var arVersion = navigator.appVersion.split("MSIE")
   var version = parseFloat(arVersion[1])
   if ((version >= 5.5) && (document.body.filters))
   {
      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);
</script>
<![endif]-->
jetzt ist das logo transparent aber der rest im forum immer noch nicht! pls help me :-/

ps. hier in diesem forum benutzt man doch auch so ein script oder nicht? weiss jemand wie das gemacht wurde? :wink:

Re: PNG Bilder Transparent im IE

Verfasst: 03.06.2009 13:45
von atze999
hat niemand eine ahnung von den "transparenten" .png bildern auf der page ?

Re: PNG Bilder Transparent im IE

Verfasst: 03.06.2009 20:28
von Pyramide
http://www.twinhelix.com/css/iepngfix/ funktioniert im IE6 (selbst getestet) und hat auch eine integrierte Debug-Funktion, die einem sagt, warum es nicht funktioniert.