PNG-Workarounds für IE 6
Wie wir alle ja mittlerweile wissen, ist IE 7 schon eine Weile draussen. Die Zugriffsstatistiken auf meine Website sind aber der Meinung, dass erst um die 10% der Views via IE 7 abgerufen werden. Das heisst … weiterhin Workarounds bauen für IE 6. Vorallem wenn es um die Darstellung transparenter PNG’s geht, was jeder state-of-the-art-Browser problemlos hinbekommt, ausser natürlich IE 6.. das Problem ist auch nicht neu, es gibt massenweise Workarounds. Hier mal die 2 praktischsten Lösungsansätze, die mir in den letzten paar Jahren immer wieder geholfen haben:
- Vorallem interessant für Mouseovers Achtung: Das script für die mouseovers ersetzt den gesamten onmouseout-Trigger, falls man mehrere onmouseout-Events aufrufen will, muss man das mit einem div-Layer wrappen. Nicht gerade die schönste Variante, aber es funktioniert wunderbar. Leider funktioniert diese Lösung nicht mit in CSS definierten Hintergrundbildern, dafür gibts aber …
- CSS: background-img DirectX-Filter Aber auch hier gilt: Was wäre ein Workaround für IE 6 ohne Workaround für den Workaround. Links in div-Layern, deren Hintergrundbilder mit dem DirectX-Filter bestückt worden sind, funktionieren nicht mehr. Eleganteste Lösung: ein Wrapper div-Layer innerhalb des problematischen div-Layers einfügen et voilà.
Natürlich ist es am saubersten die ganze Sache via Browserweiche einzubauen. Dazu gibts ein paar einfache Ansätze via PHP, geht natürlich auch via JavaScript (ich bevorzuge die Serverside-Variante).
