himmel001: Linkziel nicht unterstreichen?

Hallo,

ich habe das folgende Problem:

Innerhalb einer Webseite mit HTML und CSS befinden sich mehrere Verweise auf bestimmte Textteile. Diese sind wie üblich mit einem Anker versehen. Nun will ich aber, dass nur die Links <a href="#XYZ"></a> und nicht deren Ziele <a name""ZYX"></a> bei der Verwendung von "hover" (Unterstreichung nur, wenn die Maus darüber steht) unterstrichen werden.

Geht das eigentlich noch mit CSS oder braucht man da schon etwas anderes, wie JavaScript? Und wenn es geht, wie geht es?

Danke
Jürgen

  1. Hallo,

    Du brauchst kein <a name="..."></a> um einen Anker zu definieren. Es reicht völlig, wenn du dem Element zu dem gesprungen werden soll eine ID gibst und dann diese ID als Ankerziel verwendest.
    Alternativ könntest du auch mal eine Kombination der Pseudoklassen ausprobieren und statt a:hover einmal a:link:hover selektieren. Ich bin mir aber nicht sicher ob letzteres von allen Browsern verstanden wird.

    Gruss,
    OhneName

  2. Hallo

    Innerhalb einer Webseite mit HTML und CSS befinden sich mehrere Verweise auf bestimmte Textteile. Diese sind wie üblich mit einem Anker versehen. Nun will ich aber, dass nur die Links <a href="#XYZ"></a> und nicht deren Ziele <a name""ZYX"></a> bei der Verwendung von "hover" (Unterstreichung nur, wenn die Maus darüber steht) unterstrichen werden.

    Geht das eigentlich noch mit CSS oder braucht man da schon etwas anderes, wie JavaScript? Und wenn es geht, wie geht es?

    Wie "OhneName" schon schrieb, kannst du das Problem mit der Vergabe einer ID (z.B. <h2 id="ziel1">Bla</h2> oder <span id="ziel2">blubb</span> (innerhalb eines Textabschnitts)) anstatt eines Verweisankers angehen. Damit ist das Sprungziel kein Link und die CSS-Formatierung für Links greift nicht. Ältere Browser, wie der kaum noch anzutreffende NS 4 können damit allerdings nichts anfangen, da sie das Attribut "id" nicht kennen.

    Eine andere Lösung ist die Verwendung eines Attributselektor im CSS (a[href] { /* Formatierungen für Links mit href-Attribut */ } bzw. a[name] { /* Formatierungen für Links mit name-Attribut */ }). Damit schließt du allerdings die Internet Explorer aus, die das nicht verstehen.

    Eine dritte Lösung ist die Verwendung einer Klasse für die Sprungziele und deren Formatierung, die dafür sorgt, dass die Unterstreichung und etwaige Farbänderungen bei visited, hover, focus und active auf die Elemente der Klasse nicht angewendet werden.

    Die erste Lösung ist meiner Meinung nach aus praktischen Erwägungen vorzuziehen.

    Tschö, Auge

    --
    Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
    (Victor Hugo)
    <dingdong /><dingdong /><toc /><toc /><toc /><shout>Florence!</shout>
    Veranstaltungsdatenbank Vdb 0.1