2008-09-17 3 views
10

Ich habe ein paar Korrekturen gesehen, um PNG-Bildern Transparenz in Internet Explorer 6 zu ermöglichen, aber ich muss noch einen finden, mit dem Sie auch die Hintergrundposition in CSS festlegen können. Wenn Sie Sprites verwenden, ist dies ein Deal-Breaker. Ich benutze GIFs (die nicht so hochwertig sind), verwende keine transparenten Bilder oder verwende ein komplett anderes Stylesheet als IE6. Gibt es eine Lösung für IE6, die PNG-Folien UND Hintergrundpositionierung ermöglicht?Gibt es einen JavaScript-PNG-Fix für IE6, der CSS-Hintergrundpositionierung ermöglicht?

+0

[check this] (http://www.twinhelix.com/css/iepngfix/) –

+0

, dass die Hintergrundposition ignoriert, leider ist es an der oberen linken Ecke zu positionieren. –

Antwort

7

Ja. Konvertieren Sie Ihre Bilder, um indizierte Paletten zu verwenden (png256). Sie können Transparenz unterstützen (genau wie bei gif), aber keinen Alpha-Kanal.

Sie können dies mit Irfanview und das PNGout-Plugin, pngquant oder pngnq tun.

Das YUI-Performance-Team hat auch eine great presentation, die dies viele andere Bildoptimierungskonzepte behandelt.

+0

Danke für diese Ressource. – VirtuosiMedia

+0

Der Mangel an Alpha-Kanal macht diese Lösung für meine spezifischen Bedürfnisse unbrauchbar. Stattdessen musste ich meinem PNG eine feste Hintergrundfarbe geben, um den Hintergrund der Seite manuell anzupassen. –

4

This ist eine neue Technik, die im letzten Monat oder so aufgetaucht ist. Von der Seite:

In diesem Skript Image-Tags werden unterstützt, sowohl mit als auch ohne Leer Spacer GIF und PNG-Dateien Hintergrundbild positioniert werden können, sowie wiederholt, auch wenn sie kleiner als das Inhaltselement sie sind in.

+0

Link ist kaputt :( –

1

Sie tatsächlich reine CSS zu bekommen positioniert Hintergrund-Bilder mit alpha-Transparenz in IE6 durch die Nutzung von IE6 Alpha Filter nehmen und die CSS clip Eigenschaft nutzen können. Julien Lecomte describes the technique on his blog.

Beachten Sie, dass diese Technik bei jeder Verwendung eines Alpha-Filters zu einem Leistungseinbruch führt.

2

Wenn der Hintergrund statisch ist, verwende ich TweakPNG, um den Hintergrundfarben-Chunk im PNG in die richtige Farbe zu ändern (anstelle der Standard-Graufarbe). Jeder reguläre Browser wird dies ignorieren, da der Alphakanal ihn außer Kraft setzt, aber IE6 und niedriger wird diese Farbe anstelle des Alphakanals verwenden.

Dies bedeutet, dass wir Transparenz in IE7 + haben, während sie sich in IE6 und niedriger schön verschlechtern. Und alle css Positionierung und Wiederholung sind möglich (weil es keine Hacks gibt!).

+0

Ich mag das! Wenn es etwas gibt, das ich hasse das ist Browser spezifische css/html/js hacks. Jetzt kann ich fast eine Alpha-Transparenz haben und immer noch die CSS gültig. Glücklich :) – Gene

Verwandte Themen