Transparente Bilder – bin mal wieder über das IE6 PNG Problem gestolpert.
PNGs werden im IE6 ja nur über den Filter des AlphaImageLoaders korrekt angezeigt. Hier muss unbedingt daran gedacht werden, dass der angegebene Pfad relativ zum Server ist! Sonst sieht man das Bild nicht mehr.
Also entweder den Pfad absolut eintragen oder wie im Beispiel für unseren Server:
#logo {
background-image: url(../images/logo.png);
_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=’/dev/silverstripe/mysite/images/logo.png’, sizingMethod=’crop’);
_background:none;
}
Andy 20:20 on 2010/01/18 Permalink | Log in to Reply
Das ist falsch/unnötig. Ich hatte gesagt, Du sollst den Pfad mal absolut eintragen, das heißt aber nicht, dass das die beste Lösung ist. Der AlphaImageLoader lädt Bilder einfach nur nicht relativ zum CSS-File, sondern zur HTML-Datei. Ein einfaches “mysite/images/logo.png” reicht hier.
Claudia 10:48 on 2010/01/21 Permalink | Log in to Reply
Das stimmt nicht, ich brauche den absoluten Pfad.
Das PNG wird sonst auf den Silverstripe Unterseiten nicht angezeigt wenn ich nur den Pfad ab mysite/… eintrage!
Andy 09:18 on 2010/01/22 Permalink | Log in to Reply
Ok stimmt in Silverstripe, er beachtet die base-href nicht, in meinem Beispiel hatte ich keine Base Href. Das ist doof, dann muss man an sich das in ein IE-Stylesheet tun, dass man dann dynamisch auf Grundlage der base_url erzeugt.