Thomas Althaus: active Link

Hallo,

ich habe auf meiner Seite mit CSS die Standard-Links im Design verändert. Unter anderem auch den active Link. Und zwar wie folgt:

a:active
 {
 textdecoration:none;
 background-color:#FFFF00;
 color:#0000FF;
 }

Das macht den Hintergrund nach dem anklicken gelb und die Schriftfarbe blau. Klappt bei einer Seite mit Frames auch wunderbar. Habe jetzt aber eine Seite ohne Frames gemacht. Habe statt dessen mit CSS "Boxen" auf dem Bildschirm pixelgenau plaziert. Nach dem klick auf einen Link (der entsprechen mit CSS formatiert wurde, siehe oben) öffnet sich eine neue Seite im gleichen Browser-Fenster. Der Link bleibt aber leider nicht aktiv, also er bekommt keinen gelben Hintergrund und blauen Text. Nur beim klick.. wenn die Seite neu geladen wird sieht der Link wieder normal aus. Kann ich es nicht irgendwie erreichen, dass der Link aktiv bleibt?

Schon mal vielen Dank
Thomas Althaus

  1. Hi,

    ich habe auf meiner Seite mit CSS die Standard-Links im Design verändert. Unter anderem auch den active Link. Und zwar wie folgt:
    a:active
    Das macht den Hintergrund nach dem anklicken gelb und die Schriftfarbe blau.

    Dann hast Du einen defekten Browser. Laß mich raten. Internet Explorer.

    :active ist definiert, daß es WÄHREND des Klicks zutrifft, nicht danach.
    Also vom Moment des Maustastendrückens bis zum Maustastenloslassen.

    Dein Problem ist nicht mit CSS alleine lösbar.
    Setze auf der jeweiligen Seite entweder ein class-Attribut (oder eine andere Kennzeichnung) ein oder gar keinen Link.

    cu,
    Andreas

    --
    MudGuard? Siehe http://www.mud-guard.de/
  2. Hi,

    wie MudGuard gsagt hat: verwende einfach _keinen_ Link, da eine Verlinkung der angezeigten Seite ohnehin keinen Sinn macht.
    Ich setze hierfür den Linktext nicht in <a> sondern in ein <span>, das ich entsprechend formatiere.

    freundliche Grüße
    Ingo

  3. Hallo

    Nach dem klick auf einen Link (der entsprechen mit CSS formatiert wurde, siehe oben) öffnet sich eine neue Seite im gleichen Browser-Fenster. Der Link bleibt aber leider nicht aktiv, also er bekommt keinen gelben Hintergrund und blauen Text. Nur beim klick..

    Eben, nur beim Klick! Genau dafür ist "active" da. Du kannst das, wie schon
    angesprochen, mit einem <span class="hier"> umgehen (class="hier" ist ein Beispiel).
    Diese Klasse kannst du nach Belieben formatieren, z.B. gelb mit blauer Schrift,
    wenn's genehm ist.

    Tschö, Auge

    --
    Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
    (Victor Hugo)
    1. Moin!

      Eben, nur beim Klick! Genau dafür ist "active" da. Du kannst das, wie schon
      angesprochen, mit einem <span class="hier"> umgehen (class="hier" ist ein Beispiel).
      Diese Klasse kannst du nach Belieben formatieren, z.B. gelb mit blauer Schrift,
      wenn's genehm ist.

      Was heißt hier "umgehen"?

      Was tatsächlich notwendig ist, ist ein dynamisches Ändern des Quelltextes, sei es per serverseitigem Mechanismus, oder meinetwegen auch per Javascript (je nach Realisierung einigermaßen bis hin zu absolut nicht(!!!!1) empfehlenswert).

      Um den jeweils aktiven Link ein <span> zu schreiben, halte ich hierbei nicht wirklich für sinnvoll. Es erscheint mir günstiger, einfach dem jeweils aktiven Link eine eigene Klasse zuzuweisen, die man dann nach Wunsch formatiert.

      Also meinetwegen:
      a.geklickt:link { color:heller; background-color:hervorgehoben;} (die Farbwerte seien Platzhalter).

      <a class="geklickt">Aktive Seite</a>
      <a>inaktive Seite</a>

      - Sven Rautenberg

      --
      Die SelfHTML-Developer sagen Dankeschön für aktuell 21335,05 Euro Spendengelder!
      1. Hi,

        Was tatsächlich notwendig ist, ist ein dynamisches Ändern des Quelltextes

        Du hast die Ausgangsfrage nicht richtig gelesen.

        Zitat:
        " Habe jetzt aber eine Seite ohne Frames gemacht. [...] öffnet sich eine neue Seite im gleichen Browser-Fenster "

        Die folgende Formulierung:
        " Der Link bleibt aber leider nicht aktiv "

        stiftet zwar etwas Verwirrung, ich interpretiere sie aber als Erklärungsversuch eines typischen "Framseitenbastlers".

        Was wir hier mit span vorschlugen, macht in diesem Fall dann sehr wohl Sinn. Um es nochmal am Beispiel zu zeigen:

        #navi a:hover, #navi span {color:blue; background:yellow;}

        <div id="navi">
        <a href="link1.html">link1</a>
        <span>link2</span>
        <a href="link3.html">link3</a>
        </div>

        freundliche Grüße
        Ingo