:visited

Avatar of Sara Cope
Sara Cope am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Der :visited Pseudoklassen-Selektor kann *einige* der Stile eines Anker-Links (<a>) ändern, wenn der Browser des Benutzers den Link bereits besucht hat. Er soll den Benutzern helfen, den Unterschied zwischen Links, die sie besucht haben und solchen, die sie noch nicht besucht haben, zu erkennen.

a:visited {
  color: gray;
}

Einschränkungen und Verwendung

Es gibt einige Datenschutzbedenken bezüglich :visited, nämlich dass eine bösartige Website Links zu vielen Websites mit :visited-Styling haben könnte, und dann den visuellen Stil der Links mit JavaScript testen könnte, um an einen Server zurückzumelden, welche Seiten der Benutzer besucht hat. Dies verletzt die Privatsphäre des Benutzers und könnte potenziell persönlich identifizierbare Informationen preisgeben.

Daher schränken die meisten Browser ein, welche Stile für :visited-Links geändert werden können und welche Styling-Informationen mit der getComputedStyle-Methode gemeldet werden können.

Dies ist ein guter Überblick über diese Situation.

Dies sind die Eigenschaften, die mit :visited geändert werden können

Sie können :visited nur verwenden, um diese Eigenschaften zu ändern, wenn der Link sie bereits im "unbesuchten" oder :link-Zustand hat. Sie können damit keine Eigenschaften hinzufügen, die auf dem Link nicht bereits vorhanden sind. Zum Beispiel

Sie *können* die background-color eines :visited-Links ändern, wenn das Link-Element bereits eine Hintergrundfarbe hatte.

Sie *können keine* background-color zu einem :visited-Link hinzufügen, wenn er als "unbesuchter" Link keine Hintergrundfarbe hatte.

Es ist auch nützlich zu wissen, dass die meisten Link-Pseudoklassen in einer bestimmten Reihenfolge deklariert werden sollten. Die Reihenfolge ist

  1. Link
  2. Besucht
  3. Hover
  4. Aktiv

Wenn Sie :focus-Styling für Ihren Link einschließen, wird es üblicherweise zwischen "hover" und "active" hinzugefügt.

Demo

Erweiterung von :visited

Obwohl das direkte Styling für :visited-Links begrenzt ist, gibt es viele clevere Wege, die Optionen für das Styling besuchter Links zu erweitern. Im Jahr 2015 gab es eine Flut von Blogbeiträgen, die neue Ideen für das Styling von :visited-Links teilten.

Revisiting :visited von Joel Califa zeigt ein Beispiel für die Verwendung von localstorage zum Stylen von besuchten Links innerhalb derselben Domain.

Hacking :visited von Una Kravets dreht :visited auf den Kopf, indem ein "unbesuchter" Tag als :after-Inhalt zu Links hinzugefügt wird, der dann durch eine Hintergrundfarbänderung versteckt wird, nachdem der Link besucht wurde.

Pushing the limits of :visited with CSS blend modes von Stelian Firez kombiniert einen kleinen HTML-Trick, der DuckDuckGo zugeschrieben wird und background-blend-mode: screen;, um ein benutzerdefiniertes Symbol neben einem besuchten Link einzublenden.

Styling Visited Links with SVG von Dudley Storey. Verwendet SVG-Bilder mit fill, die so eingestellt sind, dass sie mit der Hintergrundfarbe der Seite übereinstimmen, wenn sich der Link im :link-Zustand befindet, und dann mit einer anderen Farbe, nachdem der Link :visited ist. Das Tutorial enthält auch eine alternative Methode, die Unicode-Zeichen anstelle von SVG verwendet.

Browser-Unterstützung

Alle Browser unterstützen dies.

Weitere Informationen