Dann muss ich mir diese Methode nochmals anschauen. Hab die ein paar mal getestet aber das hat nicht wirklich funktioniert. Ich bin von ner ähnlichen Site ausgegangen:
The easiest way to fix png!
Grundlage ist hierbei ja immer ein blank.gif und ein .htc File. Diese Methode löst aber das Problem von background: repeat; immer noch nicht. Ich habe mir für unifarbene Flächen, welche lediglich transparent durscheinen sollen, zwei Ansätze überlegt. Mal von dem Fakt ausgesehen, dass es anscheinend keine adäquate Lösung für gekachelte PNGs gibt.
I) Man erzeugt ein PNG welches einfach so gross ist wie die Fläche selber. Erzeugt zwar ein paar Kilobytes mehr, aber sowas muss man dann wohl in Kauf nehmen. Man könnte dann das ganze über ein Conditional Comment explizit nur für den IE6 einbinden. Bei dieser Methode würde ich auf diesen Code setzten:
Code:
* html #gewünschtes_Element {background-image: none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=crop src='../images/gewünschtes_Bild.png)}
Er ist rein in CSS einzubauen und benötigt keine weiteren Files. Das ist praktisch und erleichtert die Arbeit. Für Neulinge kurz erklärt.
#gewünschtes_Element steht vor dieser Definition ganz normal für alle anderen Browser. Diese Technik versteht nach meinem Wissen sowieso nur der IE. Alle anderen interpretieren den AlphaImageLoader nicht.
Code:
#gewünschtes_Element {background-image: url(gewünschtes_Bild.png);}
* html #gewünschtes_Element {background-image: none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=crop src='../images/gewünschtes_Bild.png)}
II) Man arbeitet mit dem Alpha-Filter, weil dieser lustigerweise in IE6 korrekt dargestellt wird. Ein Problem hat man, dass diese Eigenschaft auf alle Kinderelemente (Unterelemente) vererbt wird. Doofe Sache. Da bleibt nur noch position: absolute! Die DIV-Boxen nebeneinander legen und mit festen Breiten/Höhen arbeiten und layern über den z-index. Was jetzt so zumindest in meinem Fall funktioniert hat.