Der Martin: Anderer Hintergrund und Text bei hover

Beitrag lesen

Hallo Gerhard,

»» der IE kann bis einschließlich Version 6 :hover *ausschließlich* auf Links anwenden, nicht auf andere Elemente.
ich habe jetzt das Bild innerhalb eines a-tags gestellt. Damit beim Klicken nicht verzweigt wird, hatte ich angegeben: href="".

das ist quasi ein relativer Link auf das Default-Dokument im aktuellen Serververzeichnis. Da weder ein führender Slash, noch eine Protokollangabe dasteht, nimmt der Browser das als Basis, was von der aktuellen URL wie das Verzeichnis aussieht, und hängt den Wert des href-Attributs an - in diesem Fall nichts. Du linkst damit beispielsweise von http://example.com/info/something.html nach http://example.com/info/, und das willst du nicht.

Das war leider ein Fehlschluss. Kann ich erreichen, dass beim Klick nicht verzweigt wird?

Ich wollte erst schon vorschlagen, href="#" zu notieren - das wäre aber ähnlich unsinnig (okay, man bleibt wenigstens innerhalb der aktuellen Seite). Und wenn du das href-Attribut ganz weglässt, ist der Link kein Link mehr und IE6 hovert nicht mehr. Nein, wenn du erst einmal einen Link hast, musst du auch sein Verhalten akzeptieren.

Du kannst zwar einen onclick-Handler im Link notieren, der nichts weiter tut als false zurückzugeben und damit die Standardaktion zu unterdrücken. Aber das wäre meiner Ansicht nach wirklich blöd: Erst einen Link benutzen, den man gar nicht will, und dann dessen Verhalten mit Javascript neutralisieren. Dann kann man stattdessen auch gleich das hover-Verhalten mit Javascript realisieren - jedenfalls dann, wenn man in Kauf nehmen kann, dass der hover-Effekt bei Besuchern ohne Javascript nicht funktioniert. Egal wie, irgendeinen Nachteil muss man in Kauf nehmen.

Oder die IE6-Nutzer mitleidig angucken, die Schultern zucken und sagen, "Kann ich auch nix für."

So long,
 Martin

--
Das Gehirn ist schon eine tolle Sache: Es fängt ganz von allein an zu arbeiten, wenn man morgens aufsteht, und hört erst damit auf, wenn man in der Schule ankommt.
  (alte Schülererkenntnis)