Il :visited
selettore di pseudo-classe può cambiare parte dello stile di un elemento anchor link ( ) se il browser dell'utente ha già visitato il collegamento. Ha lo scopo di aiutare gli utenti a distinguere la differenza tra i collegamenti che hanno e non hanno visitato.
a:visited ( color: gray; )
Limitazioni e utilizzo
Vi è un certo problema di privacy :visited
, vale a dire che un sito Web dannoso potrebbe avere collegamenti a tonnellate di siti Web con :visited
uno stile, quindi testare lo stile di visualizzazione dei collegamenti con JavaScript per segnalare a un server quali siti l'utente ha visitato. Ciò viola la privacy dell'utente e potrebbe potenzialmente rivelare informazioni di identificazione personale.
Di conseguenza, la maggior parte dei browser limita lo stile che può essere modificato sui :visited
collegamenti e le informazioni sullo stile che possono essere riportate con il getComputedStyle
metodo.
Questa è una buona conclusione di quella situazione.
Queste sono le proprietà che possono essere modificate con :visited
:
color
background-color
border-color
(e le sue proprietà secondarie)outline-color
- Le parti colorate delle proprietà
fill
estroke
È possibile utilizzare :visited
per modificare queste proprietà solo se il collegamento le ha già nello :link
stato o "non visitato" . Non è possibile utilizzarlo per aggiungere proprietà che non sono già presenti nel collegamento. Per esempio:
È possibile modificare il background-color
di un :visited
collegamento se l'elemento del collegamento aveva già un colore di sfondo.
Non è possibile aggiungere un background-color
a un :visited
collegamento se non aveva un colore di sfondo quando era un collegamento "non visitato".
Collega le pseudo-classi in ordine
È anche utile sapere che la maggior parte delle pseudo-classi di collegamento devono essere dichiarate in un ordine specifico. L'ordine è:
- Link
- Visitato
- Hover
- Attivo
Se includi lo :focus
stile per il tuo collegamento, è normale aggiungerlo tra "hover" e "attivo".
Demo
Estensione :visited
Sebbene lo stile diretto per i :visited
collegamenti sia limitato, ci sono molti modi intelligenti per estendere le opzioni per lo stile dei collegamenti visitati. Nel 2015 c'è stato un gran numero di post sul blog che condividevano nuove idee per lo stile dei :visited
link:
Rivisitazione: visitati , di Joel Califa, mostra un esempio di utilizzo dello localstorage
stile per i link visitati nel dominio.
Hacking: visitati , da Una Kravets, si capovolge :visited
aggiungendo un tag "non visitato" come :after
contenuto ai collegamenti, che viene poi nascosto con uno scambio di colore di sfondo dopo che il collegamento è stato visitato.
Spingendo i limiti di: visitato con modalità di fusione CSS , da Stelian Firez, combina un piccolo trucco HTML attribuito a DuckDuckGo e background-blend-mode: screen;
per far sfumare un'icona personalizzata accanto a un collegamento visitato.
Styling dei collegamenti visitati con SVG , da Dudley Storey. Usa le immagini SVG con fill
set per abbinare il colore di sfondo della pagina quando il collegamento è nello :link
stato, quindi con un altro colore dopo il collegamento :visited
. Il tutorial include anche un metodo alternativo che utilizza caratteri Unicode invece di SVG.
Relazionato
:link
:active
:hover
:focus
Maggiori informazioni
:visited
nelle specifiche W3C:visited
presso MDN
Supporto browser
Tutti i browser lo supportano.