Der IE6 kann ja nunmal nicht mit :before klarkommen, wenn man darüber per content: über das CSS Inhalt in die Seiten bringen will. Ziemlich nervig, wenn man das benutzt. Das IE7-Projekt von dem ich im vorigen Artikel schreibe funktioniert bei mir aber auch nicht verlässlich - z.B. unter einem Citrix-Server will er das nicht ausführen, warscheinlich fehlen ihm irgendwelche Sicherheitseinstellungen dort. Strange. Egal, ich hab mir das Problem selber mal angeguckt und eine recht kompakte Lösung gefunden, jedenfalls für meine spezielle Spielart des Problems: ich will nämlich nur Icons vor einen Link stellen.
Dazu haben Links eine von drei Klassen oder keine Klasse: class="zu" definiert ein zugeklapptes Navigationselement, class="auf" ein aufgeklapptes, class="ohne" einen Link der nicht speziell angehübscht werden soll und alle anderen Links kriegen ein Standard-Icon.
Dazu hänge ich einfach unten in die Datei kurz vor dem /body folgenden Code:
var links = document.getElementsByTagName("a");
for (var i=0; i
Den ganzen Kram packe ich dann am besten noch in einen bedingten Kommentar für den IE, so das er nur von diesem überhaupt ausgeführt wird. That's it. Simpel und wirksam. Deaktiviertes JavaScript ist in meinem Fall nicht kritisch, da ohne JavaScript auf dem System (ist eine Business-Lösung mit hoher Interaktivität) demnächst eh nix mehr laufen wird- Ajax braucht nunmal JavaScript als eine Komponente ...