Hallo Chefken,
(..) Wie macht man ein Hintergrundbild zum Link?
Garnicht. Aus dem ganz einfachen Grund: Ein Hintergrundelement ist kein
aktives Element, auf das man klicken oder das man irgend interagieren
kann.
Was Du bräuchtest, wäre ein permanent oben rechts positioniertes Element,
daß einen Link beinhaltet, auf den man klicken kann. Das dieser Link dann
ein Bild beinhaltet, ist nur marginal.
Und: Wie kann man das Hintergrundbild nach oben rechts ausrichten?
Ich formuliere mal um: Wie kann man ein Element ständig sichtbar oben
rechts ausrichten, auch beim scrollen?
Das geht mit der CSS-Eigenschaft samt Wart position:fixed.
http://selfhtml.teamone.de/css/eigenschaften/positionierung.htm#position
Dummerweise funktioniert das nicht im verbreitesten Browser, dem Internet
Explorer. Und Du willst diesen Effekt ja anscheinend nicht nur den Benutzern
anderer Browser wie Mozilla, Opera, Konquerer, Safari vorbehalten, da Du
laut Deiner Äußerungen hier im Thread nur auf die Masse zu achten scheinst.
(Du könntest mal nach den diversen Ersatzlösungen für position:fixed für
den Internet Explorer suchen. Da gibt es diverses, aber meiner Meinung
nach nichts wirklich befriedigendes.)
Die Alternative wäre ein Javascript, das dieses Element immer nach einem
Scrollvorgang an die richtige von Dir gewünschte Stelle rückt. Dies ist
durchaus möglich, durch die Natur der Sache aber ein recht kompliziertes
Script, recht langsam und kann dadurch zu unschönen Ruckeln führen. Um Dir
zu verdeutlichen, wie kompliziert das ist, hier eine Auflistung der Schritte,
die das Script im einzelnen tun müßte:
1. Bei einem Scrollvorgang in Tätigkeit treten.
2. Die Länge des Scrollvorgangs erfragen
3. Diese Länge mit der derzeitigen Position des vorher schon positionierten
Elementes zu einem neuen Wert zusammenrechnen.
4. Das Element neu positionieren.
Das ganze sollte dann auch noch recht fehlertolerant und browserübergreifend
programmiert werden, das heißt weitere Möglichkeiten und Problemfelder.
Noch eine Alternative wäre ein seitlicher, nicht auffallender Frame in
dem das Element positioniert ist. Das hat den Vorteil, daß das Element
ständig in Sicht ist. Bei einem Klick auf den Link in diesem Frame müßte
dann ein Javascript in der Seite des anderen Frames auf einen obig
positionierten Anker springen. (Die Existenz eines generellen Ankers #top
kann nicht vorausgesetzt werden, haben wir hier neulich herausgefunden.)
Ganz abgesehen von der offensichtlichen Absurdität dieser Lösung (Eine
extra Frames-Navigationsstruktur nur für einen Nach-Oben-Hüpfen-Link
ist einfach unangemessener Overkill) kann es hier diverse Schönheitsprobleme
geben, von Platzproblemen angefangen bis hin zu für den Normalbenutzer
verwirrend angeordneten Scrollbalken mitten in der Seite, nachdem Du den
Link offensichtlich oben rechts positioniert haben willst.
Was würde ich machen? Es lassen. Meiner unmaßgeblichen Erfahrung nach
nutzt kaum jemand diese Nach-Oben- bzw. Nach-Unten-Links, man ist einfach
schon aus anderen Anwendungen mit grafischer Benutzeroberfläche den
Scrollbalken als Navigationsinstrument gewöhnt und nutzt diesen intuitiv
für über den Bereich des Scrollrades hinausgehende Sprünge. Und wenn, würde
ich einfache Textlinks wie hier auch in SELFHTML auf den Einzelseiten
vorhanden benutzen. Allerdings würde ich diese nicht so aufdringlich
balkenhaft gestalten. ;)
Tim