Aller au contenu principal

Liens d’évitement (Skiplink)

Utilisez les liens d’évitement comme premier élément du body pour accéder directement au contenu ou à la navigation.

info

Ce composant est inclus dans l’offre Community.

InformationValeur
NiveauCommunity
Composants Twigdsfr:skip:links

Usage

  • Les cibles doivent exister dans la page.
  • Le composant suit la structure DSFR fr-skiplinks.

Modes d'utilisation

Liens d’évitement · exemple principal
<twig:dsfr:skip:links :links="[
{label: 'Aller au contenu', href: '#contenu'},
{label: 'Aller à la navigation', href: '#navigation'}
]" />

API publique

ComposantRôle
dsfr:skip:linksComposant principal de cette page.

Configuration

OptionTypeDéfaut / requisValeurs et usage
linksarray|string[]Liens { href, label }. Les cibles doivent exister.

Guide d'intégration

QuestionRéponse
Famille DSFRNavigation
Quand l'utiliserQuand l’usager doit se repérer, changer de section ou parcourir une liste de pages.
Quand éviterPour déclencher une action métier immédiate : utilisez plutôt un bouton.
API publiqueUtilisez uniquement les composants Twig listés sur cette page : dsfr:skip:links.
Documentation DSFRConsultez aussi la bibliothèque officielle : Système de Design de l'État.
Liens d’évitement : données typées via links

Variantes de liens d’évitement

  • liens d’évitement avec attributs HTML pass-through pour id, class, data-* et aria-* quand le template le permet.

Points de contrôle propres à ce composant

  • Les cibles doivent exister dans la page.
  • Le composant suit la structure DSFR fr-skiplinks.
  • Vérifiez un cas vide, un cas avec plusieurs entrées et un cas avec données dynamiques pour links.

Accessibilité navigation

  • Le libellé de navigation doit être explicite avec ariaLabel ou un titre visible.
  • La page courante doit être indiquée avec active, current ou aria-current selon le composant.
  • Les panneaux contrôlés par JavaScript DSFR doivent avoir des id uniques et stables.
  • Passez links avec la syntaxe : pour conserver le type tableau : :links="links".
  • Ajoutez vos attributs applicatifs (data-controller, data-action, aria-*, class) sur dsfr:skip:links quand ils concernent son nœud racine.

Checklist de recette

  • navigation clavier complète
  • état actif visible
  • liaison aria-controls vers un élément existant
  • rendu vérifié en thème clair et sombre ;
  • rendu vérifié sur mobile, tablette et desktop ;
  • aucune erreur dans le profiler DSFR ni dans l'inspecteur d'accessibilité du navigateur.

Erreurs fréquentes

SymptômeCorrection
Les données links ne sont pas prises en compteAjoutez : devant la prop Twig : :links.
Les classes DSFR semblent incomplètesUtilisez les props du composant plutôt que des classes ajoutées à la main.