jooscher: visited links zurücksetzen

Hallo !
Ich habe das Forum lange durchsucht aber leider keine Antwort auf meine Frage gefunden.

Ich schreibe gerade eine Webseite die 4 Webseiten zusammenfasst.
Die Links auf diese Webseiten sind jeweils eine eigene CSS Box mit den Eigenschaften

a.menu {
         display:block;
         text-align:center;
         font-size:1.2em;
}

a.menu:link    { color:#FFFFFF; background-color:#888888; text-decoration:none; }
a.menu:visited { color:#FFFFFF; background-color:#A9A9A9; text-decoration:none; }
a.menu:hover   { color:#FFFFFF; background-color:#A9A9A9; text-decoration:none; }
a.menu:active  { color:#FFFFFF; background-color:#A9A9A9; text-decoration:none; }

somit färbt sich der Link beim drübergleiten also anders und nimmt dann diese Farbe auch an, wenn er geklickt wird und geklickt wurde.
Das ist auch genau das, was ich will.

ABER: wenn ich nun einen anderen Link mit den gleichen Eigenschaften klicke möchte ich gerne, dass der erste Link wieder als "link" und nicht als "visited" angezeigt wird.

Ich hoffe auf Hilfe !

  1. Hi,

    a.menu:link    { color:#FFFFFF; background-color:#888888; text-decoration:none; }
    a.menu:visited { color:#FFFFFF; background-color:#A9A9A9; text-decoration:none; }
    a.menu:hover   { color:#FFFFFF; background-color:#A9A9A9; text-decoration:none; }
    a.menu:active  { color:#FFFFFF; background-color:#A9A9A9; text-decoration:none; }

    somit färbt sich der Link beim drübergleiten also anders und nimmt dann diese Farbe auch an, wenn er geklickt wird und geklickt wurde.
    Das ist auch genau das, was ich will.

    ist das auch das, was der Besucher will? Ich halte es für ungünstig, :hover und :visited gleich aussehen zu lassen; für :active habe ich da weniger Bedenken (dass ich einen Link gerade anklicke, merke ich in der Regel selber).

    ABER: wenn ich nun einen anderen Link mit den gleichen Eigenschaften klicke möchte ich gerne, dass der erste Link wieder als "link" und nicht als "visited" angezeigt wird.

    Das liegt nicht bei dir. Ob ein Link als visited gilt, entscheidet der Browser anhand der Einträge im Cache und/oder in der History. Die Tatsache, dass ein Link (besser gesagt, eine verlinkte Seite) besucht worden ist, kannst du weder faktisch noch technisch leugnen.

    So long,
     Martin

    PS: Du plenkst! Aber das ist zum Glück heilbar.

    --
    Ein Snob ist ein Mensch, der sich auf ein Stachelschwein setzt, ohne eine Miene zu verziehen - nur weil ihm jemand gesagt hat, das sei ein Designersessel.
    1. ja, das ist auch das, was in den anderen einträgen stand.

      Ja es macht Sinn, da die Links Eine Navigation sind.
      Die 4 verschiedenen Seiten sind in verschiedenen Farbtönen gehalten.
      Die jeweils gerade aufgerufene Seite soll also auch in der Navigation markiert sein.
      Wenn aber eine andere aktiv ist soll nur diese markiert sein.

      1. Hallo,

        Ja es macht Sinn, da die Links Eine Navigation sind.

        was hat das mit :visited oder :active zu tun?

        Die 4 verschiedenen Seiten sind in verschiedenen Farbtönen gehalten.
        Die jeweils gerade aufgerufene Seite soll also auch in der Navigation markiert sein.

        Ja, sicher. Das ist aber ein ganz anderes Thema. Die Pseudoklasse :visited gibt ja nur an, dass die verlinkte Ressource in der Vergangenheit (in den letzten Stunden, Tagen, Wochen, je nach Browsereinstellung) schon einmal aufgerufen wurde. Und :active besagt, dass der Link just in diesem Moment angeklickt wird. Beides hat nichts mit der momentan im Browser angezeigten Seite zu tun.

        Wenn aber eine andere aktiv ist soll nur diese markiert sein.

        Dann mach das doch so.

        Ciao,
         Martin

        --
        Lieber Blödeleien als blöde Laien.
      2. @@jooscher:

        nuqneH

        Die jeweils gerade aufgerufene Seite soll also auch in der Navigation markiert sein.

        Aber nicht verlinkt. (Punkt 10 der zehn meist-missachteten Homepage-Design-Richtlinien [Nielsen])

        Und ebendas macht das Formatieren einfach: allen Menüpunkten (es sind doch sicher 'li'-Elemente, oder?) verpasst du den Stil des Menüpunkts der aktuellen Seite, für die Menüpunkte der anderen Seiten überschreibst du dies für die Links, vgl. http://forum.de.selfhtml.org/archiv/2009/9/t190331/#m1268494.

        Qapla'

        --
        Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)
  2. Hi,

    ABER: wenn ich nun einen anderen Link mit den gleichen Eigenschaften klicke möchte ich gerne, dass der erste Link wieder als "link" und nicht als "visited" angezeigt wird.

    Er hat aber den Zustand :visited, und daran änderst du nichts (höchstens, wenn du die Linkadresse veränderst, aber das wäre blödsinnig).

    Wenn du also willst, dass Links in den beiden Zuständen :link und :visited gleich formatiert werden*, dann lautet die Lösung schlicht und einfach: Formatiere beide gleich.

    * Bei einer Navigation ist das m.E. vertretbar; bei Links innerhalb von Fliesstext würde ich als Nutzer aber auch Wert darauf legen, dass von mir bereits besuchte Linkziele gesondert hervorgehoben werden, es erleichtert die Navigation durch's WWW.

    MfG ChrisB

    --
    Light travels faster than sound - that's why most people appear bright until you hear them speak.
    1. [latex]Mae  govannen![/latex]

      * Bei einer Navigation ist das m.E. vertretbar; bei Links innerhalb von Fliesstext würde ich als Nutzer aber auch Wert darauf legen, dass von mir bereits besuchte Linkziele gesondert hervorgehoben werden, es erleichtert die Navigation durch's WWW.

      Gerade bei eine Navigation halte ich es für wichtig, besuchte Links gekennzeichnet zu haben. Wenn mich eine Seite eines Webangebots allgemein interessiert oder interessant geschrieben ist, tendiere ich dazu, auch andere Seiten dieser Site zu besuchen. Und ab einer (un)bestimmten Anzahl weiterführender Links in der Navi weiß ich nicht mehr, welche Seiten ich schon hatte, insbesondere, wenn ich die Besuche auf >= 2-3 Tage verteilt habe. Man wird ja nicht jünger.

      Cü,

      Kai

      --
      Hard to believe that anyone would use Prototype.js at this
      point. It was a bad idea in 2006 and it hasn't gotten any better with age. (David Mark)
      Foren-Stylesheet Site Selfzeugs
      SelfCode: sh:( fo:| ch:? rl:( br:< n4:( ie:{ mo:| va:) js:| de:> zu:) fl:( ss:| ls:?
      1. Hi,

        Gerade bei eine Navigation halte ich es für wichtig, besuchte Links gekennzeichnet zu haben.

        Kommt drauf an ... (Bei Links im Fliesstext ist es mir i.d.R. wesentlich wichtiger.)

        Wenn mich eine Seite eines Webangebots allgemein interessiert oder interessant geschrieben ist, tendiere ich dazu, auch andere Seiten dieser Site zu besuchen. Und ab einer (un)bestimmten Anzahl weiterführender Links in der Navi weiß ich nicht mehr, welche Seiten ich schon hatte,

        Das mag bei einer kleineren Site ein Argument sein.

        Bei grösseren, wie bspw. einem Nachrichtenportal o.ä., "bringt" mir das als Nutzer nicht besonders viel - da schaue ich in die einzelnen Rubriken sowieso öfter rein, weil sich die Inhalte, die sich dahinter verbergen, beständig ändern.

        MfG ChrisB

        --
        Light travels faster than sound - that's why most people appear bright until you hear them speak.
  3. ABER: wenn ich nun einen anderen Link mit den gleichen Eigenschaften klicke möchte ich gerne, dass der erste Link wieder als "link" und nicht als "visited" angezeigt wird.

    Das geht nicht mit css resp. mit visited. Hierzu müsste man mit Java-Script einen eigenen Zustandsautomaten erstellen "lastvisited" und den eben mit Java-Script verarbeiten

    Im onclick jedes Links wird dann ein Script aufgerufen, dass die Layouts der Links entsprechend anpasst ...

    a) das macht schon Arbeit
    b) das funktioniert nur bei aktivem Java-Script
    c) das ist für den Besucher erst mal unverständlich, weil er die Funktion in seinem Browser nicht kennt.