Aller au contenu
SilktideAide

Liens factices

Silktide repère des liens qui pointent vers #, une adresse web qui signifie « le haut de cette page ». Il s’agit généralement de liens factices — des liens ajoutés avant que leur destination n’existe et qui n’ont jamais été mis à jour — ou de liens détournés pour déclencher des scripts.

<!-- Lien factice laissé en place : ne mène à rien d'utile -->
<a href="#">En savoir plus</a>

<!-- Lien détourné pour exécuter un script -->
<a href="#" onclick="openMenu()">Menu</a>

Pourquoi c’est important

Un visiteur qui clique sur un lien # s’attend à aller quelque part ; au lieu de cela, la page remonte simplement en haut, ce qui donne l’impression d’un dysfonctionnement. Lorsque cette pratique est utilisée pour déclencher , elle induit également en erreur les technologies d’assistance : un l’annonce comme un lien, en promettant une navigation, alors qu’en réalité il se comporte comme un bouton — et si les scripts échouent à se charger, il ne fait rien du tout.

Ces liens sont souvent des restes : un modèle livré avec une navigation factice, ou un lien « bientôt disponible » que personne n’a reconsidéré.

Comment corriger

  1. Si le lien était censé mener quelque part, faites pointer son href vers la véritable destination.
  2. S’il déclenche un script, remplacez-le par un <button>, ce que les attendent pour des actions :
<!-- Avant : un lien qui se fait passer pour un bouton -->
<a href="#" onclick="openMenu()">Menu</a>

<!-- Après : un vrai bouton, mis en forme comme vous le souhaitez -->
<button onclick="openMenu()">Menu</button>
  1. S’il n’a aucune utilité, supprimez-le ou remplacez-le par du texte simple.
  2. Si un lien # est réellement intentionnel — par exemple, inséré par un framework qui l’améliore de manière fiable — le constat afin qu’il ne soit plus signalé.

Comment Silktide teste cela

  1. Trouver chaque lien classique sur chaque page.
  2. Signaler chacun dont le href est exactement #.

Les liens vers des positions nommées sur la page, comme #news, sont légitimes et ne sont pas signalés.

Dépannage

Le lien fonctionne parce que JavaScript le gère

Cela fonctionne pour les utilisateurs de la souris tant que les scripts se chargent correctement, mais il s’annonce tout de même comme un lien auprès des technologies d’assistance et fait toujours remonter en haut lorsque le script échoue. Un <button> se comporte correctement dans tous ces cas ; si modifier le balisage est impraticable, approuvez le constat.

Le # provient d’un framework ou d’un composant CMS

Les composants de menu et d’onglets de certains frameworks et thèmes de produisent href="#" par défaut. Consultez la documentation du composant pour une manière d’afficher un bouton ou une véritable destination à la place.

En savoir plus

Dernière mise à jour

Cette page vous a-t-elle été utile ?

Liens factices | Centre d’aide Silktide