Le :link
sélecteur est une pseudo-classe qui cible tous les éléments anchor ( ) non visités sur une page.
a:link ( color: aquamarine; )
L'exemple ci-dessus changera la couleur de tous les liens non visités en aigue-marine.
Lorsqu'il est utilisé en combinaison avec la :hover
pseudo-classe, :link
doit apparaître en premier, ou ne pas être défini du tout, pour que les :hover
styles fonctionnent. En effet, ils sont tout aussi spécifiques, donc s'ils :link
venaient après, ces styles remplaceraient les styles de survol.
La :link
pseudo-classe ciblera tous les éléments qui ont un
href
attribut, même si le href
a une valeur vide. Donc, dans ce sens, c'est comme le sélecteur d'attribut (href)
.
Cela signifie que les trois éléments HTML suivants peuvent tous être stylisés via la :link
pseudo-classe:
CSS-Tricks CSS-Tricks CSS-Tricks
Cependant, le troisième exemple du bloc de code ci-dessus serait du HTML non valide.
Il n'y a que trois éléments HTML qui acceptent l' href
attribut: ,
et
. Seul l'
élément peut être stylisé via la
:link
pseudo-classe.
De plus, vous ne pouvez pas ajouter l' href
attribut à un autre type d'élément et le rendre stylable via :link
. En d'autres termes, si vous aviez le code HTML suivant:
CSS-Tricks
Le CSS suivant n'aurait aucun effet:
div:link ( color: aquamarine; )
Encore une fois, le HTML échouerait à la validation, car ce href
n'est pas un attribut valide pour
.
En raison du fait qu'il :link
ne peut cibler que des éléments, les
:link
styles peuvent être définis dans le CSS sans le sélecteur de type d'élément, comme ceci:
:link ( color: aquamarine; )
De plus, à toutes fins pratiques lors de l'utilisation de HTML, la :link
pseudo-classe est quelque peu hors de propos puisque le même effet peut être obtenu en ciblant simplement tous les éléments directement:
a ( color: aquamarine; )
Cependant, s'il y a des éléments sur la page qui n'ont pas l'
href
attribut défini (par exemple, sur les pages héritées qui étaient utilisées ), le code ci-dessus ciblerait également ces éléments, et cela peut ne pas être le résultat souhaité.
Il faut également souligner qu'à partir de CSS2, d'autres langages de document (en plus du HTML) peuvent définir d'autres éléments, en plus des ancres, qui peuvent être stylisés via la :link
pseudo-classe.
Prise en charge du navigateur
Chrome | Safari | Firefox | Opéra | C'EST À DIRE | Android | iOS |
---|---|---|---|---|---|---|
Tout | Tout | Tout | Tout | Tout | Tout | Tout |