← Tutti gli articoli

Tutorial

Evidenzia i link visitati — e perché il CSS permette così poco

Risultati di ricerca, una lista di articoli, documentazione — e nessun modo di capire quali link hai già aperto. Una regola CSS lo risolve. E lungo la strada vale la pena imparare perché il selettore :visited è così stranamente ridotto.

La regola

Nella scheda CSS della regola, pattern di URL per una pagina con liste di link o * globalmente:

a:visited {
  color: #9333ea !important;
}

Tutto qui. I link visitati diventano viola. Scegli un colore fortemente diverso dal colore del link normale, così il contrasto si legge all'istante.

Perché si può fare così poco

L'istinto naturale: se posso cambiare il colore, aggiungerò anche un'icona o uno sfondo. Non lo farai — ed è voluto.

Se :visited permettesse stili arbitrari, qualsiasi pagina potrebbe rilevare la tua cronologia. Inserirebbe mille link nascosti, darebbe a ciascuno una dimensione o uno sfondo diverso tramite :visited, misurerebbe il layout con JavaScript e leggerebbe quali URL hai visitato. Era una vulnerabilità reale (history sniffing) — e i browser l'hanno chiusa.

Cosa è permesso, cosa no

Su :visited funzionano solo le proprietà di colore: color, background-color, border-color, outline-color. E perfino queste vengono «mentite» in una direzione:

Vuoi più del colore?

Badge, icone, contatori di visite — :visited non te li darà. Richiederebbero di tracciare la tua cronologia in JavaScript, che è un argomento separato e molto più pesante. Per la maggior parte dei casi il solo colore basta e avanza — perché l'unica cosa di cui hai davvero bisogno è «sono stato qui o no».

Trappole

Vedi anche

Installa JustZix — e capisci a colpo d'occhio dove sei già stato.

Valuta questo articolo

Nessuna valutazione — sii il primo.

Provalo tu stesso

Installa JustZix e incolla qualsiasi snippet di questo articolo. Due minuti da zero a una regola funzionante su tutti i tuoi dispositivi.

Ottieni JustZix

Funzionalità · Come funziona · Esempi · Casi d'uso