Der IE und das PNG Format
Melzmann
- css
Hallo Community,
Habe ein Problem:
Ich habe im IE einen Div layer, indem ein PNG Bild ist mit Transparenten Flächen, da der IE transparente Flächen ja bekanntlich nicht darstellen kann, habe ich mich auf der Microsoft Seite ein wenig belesen und habe auch eine Lösung gefunden:
<DIV ID="englisch5" STYLE="
position:absolute;
bottom:311px;
left:449px;
height:15px;
width:110px;
z-index:9;
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(
src='images/index/kontakt.png');
" >
</DIV>
Dank dieses Filters kann man diese Transparenz dennoch erzielen.
Nun würde ich aber gerne die kontakt.jpg verlinken. Da ich aber nicht einfach in dieser Filterfunktion rumfummeln kann habe ich einfach ein transparentes gif erzeugt das ich über dieses Bild gelegt habe:
[code lang=css]
<DIV ID="englisch5" STYLE="
position:absolute;
bottom:311px;
left:449px;
height:15px;
width:110px;
z-index:9;
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(
src='images/index/kontakt.png');
" ><a href="kontakte.php"><img src="images/index/Bild1.gif" height="15" width="110" border="0"></a>
</DIV>
[code]
Nun tritt aber im IE ein sehr interessanter Effekt auf. Der Link funktioniert nur dort wo die darunter liegende PNG transparent ist!
Das macht sich natürlich schlecht.
Kennt jemand dieses Problem ? Wie kann man erzielen das die gesammte Fläche anklickbar ist ?
Ok hat das Problem gelößt...
habe einfach den Div Layer mit dem transparenten gif seperat angelegt:
<DIV ID="englisch5" STYLE="
position:absolute;
bottom:311px;
left:449px;
height:15px;
width:110px;
z-index:10;
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(
src='images/index/kontakt.png');" >
</DIV>
<div style="
position:absolute;
bottom:311px;
left:449px;
height:15px;
width:110px;
z-index:10;">
<a href="kontakte.php"><img src="images/index/Bild1.gif" height="15" width="110" border="0"></a>
</div>
Hi!
Dein Problem hast Du ja bereits in den Griff bekommen...
Zu deiner Aussage hätte ich aber noch eine kleine Anmerkung. Ich weiß nicht, ob dir das bekannt ist - und vielleicht spielte es in deinem Fall auch gar keine Rolle - aber den Satz wollte ich so nicht unkommentiert stehen lassen.
da der IE transparente Flächen ja bekanntlich nicht darstellen kann,
Nö. Das kann er nur nicht mit den 32Bit-PNGs, also die mit Alphakanal.
Bei den 8Bit-PNGs, sprich die mit 256 Farben, klappt das mit der Transparenz auch im IE. Das ist dann aber halt nicht die "echte" Transparenz, sondern nur die, die auch das GIF-Format kann (also eine Farbe als ganz-oder-gar-nicht-transparent erklären).
Also muß man nicht immer auf den Microsoft-Filter zurückgreifen. Der wird halt nur benötigt, wenn es wirklich um Alphatransparenz geht.
Gruß, rob