HTML Academy · Leçon

Créer des liens vers des sections avec les identifiants de fragment

Accédez directement aux sections d’une page avec les attributs id et les liens d’ancrage.

Leçon 4 sur 413 étapes

Créer des liens vers des sections avec les identifiants de fragment est une leçon HTML Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage HTML Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours HTML Academy comprend 4 leçons au total.

Qu’est-ce qu’un identifiant de fragment ?

Un identifiant de fragment est la partie d’une URL située après le symbole # :

https://example.com/page#section-3
                          │
                          └─ Fragment: "section-3"

<!-- The browser: -->
<!-- 1. Loads the page -->
<!-- 2. Scrolls to the element with id="section-3" -->

Créer des cibles d’ancre avec id

Pour créer un lien vers une section, attribuez-lui un id :

<!-- The target: give any element an id -->
<h2 id="installation">Installation</h2>
<h2 id="configuration">Configuration</h2>
<h2 id="faq">Frequently Asked Questions</h2>

<!-- The link: use # + id value -->
<a href="#installation">Jump to Installation</a>
<a href="#faq">Go to FAQ</a>

Créer un lien depuis une autre page

Vous pouvez créer un lien vers une section située sur une autre page :

<!-- From a different page -->
<a href="/docs/guide#installation">Installation Guide</a>
<!-- Loads /docs/guide and scrolls to #installation -->

<!-- Absolute URL to a section -->
<a href="https://example.com/docs#api">API Documentation</a>

Règles de nommage des id

Règles applicables aux valeurs valides de id :

  • La valeur doit être unique sur la page — deux éléments ne peuvent pas partager le même id
  • Elle ne peut pas commencer par un chiffre en CSS, même si cela est valide en HTML
  • Elle ne doit contenir aucun espace — utilisez des traits d’union : my-section
  • Elle est sensible à la casse : #FAQ et #faq sont différents

Modèle de table des matières

Les liens vers des fragments permettent de créer des tables des matières dans une page :

<nav aria-label="Table of Contents">
  <ol>
    <li><a href="#intro">Introduction</a></li>
    <li><a href="#setup">Setup</a></li>
    <li><a href="#usage">Usage</a></li>
    <li><a href="#api">API Reference</a></li>
  </ol>
</nav>

<h2 id="intro">Introduction</h2>
<h2 id="setup">Setup</h2>

Défilement fluide avec CSS

Ajoutez un défilement fluide à la navigation entre fragments :

/* Apply to the entire page */
html {
  scroll-behavior: smooth;
}

/* Or for specific containers */
.scrollable {
  scroll-behavior: smooth;
}

Marge de défilement pour les en-têtes fixes

Les barres de navigation fixes recouvrent les sections vers lesquelles vous faites défiler la page. Corrigez cela avec scroll-margin-top :

/* If you have a 60px fixed header */
:target {
  scroll-margin-top: 70px;
}

/* Or set globally for all headings */
h2, h3, h4 {
  scroll-margin-top: 70px;
}
/* scroll-margin-top offsets where the browser scrolls to */

La pseudo-classe CSS :target

Appliquez un style à la section actuellement ciblée avec :target :

/* Highlight the targeted section */
:target {
  background-color: #fff3cd;
  outline: 2px solid #ffc107;
  padding: 1rem;
}

<!-- Result: when user clicks #installation, -->
<!-- the installation section gets highlighted -->

Lien de retour en haut

Un modèle courant : un lien de retour en haut utilisant un fragment :

<a href="#top" id="back-to-top">↑ Back to top</a>
<!-- Link to page top: either id="top" on body or use empty href # -->
<!-- Always give it meaningful text for accessibility -->

<!-- Position it fixed with CSS: -->
<!--
#back-to-top {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
}
-->

Fragments et historique du navigateur

La navigation entre fragments ajoute des entrées à l’historique du navigateur :

  • Cliquer sur un lien vers un fragment ajoute une entrée à l’historique
  • Le bouton Précédent du navigateur revient à la position de défilement précédente
  • Ce comportement est normal — les SPA peuvent utiliser pushState pour le modifier

Ancres nommées (ancienne méthode)

Avant les attributs id, <a name> était utilisé pour les ancres — cet usage est désormais obsolète :

<!-- Old way (do not use): -->
<a name="section-1"></a>
<h2>Section 1</h2>

<!-- Modern way: -->
<h2 id="section-1">Section 1</h2>
<!-- Use id on the target element, not a separate anchor tag -->

Vérification rapide

Quelle propriété CSS empêche une barre de navigation fixe de recouvrir une section vers laquelle vous avez fait défiler la page ?

Récapitulatif : identifiants de fragment

Principes essentiels des liens vers des fragments :

  • #id dans href fait défiler la page jusqu’à l’élément possédant cet id
  • Chaque élément cible doit posséder un attribut id unique
  • Fonctionne sur la même page comme depuis d’autres pages
  • scroll-behavior: smooth active un défilement animé
  • scroll-margin-top évite le chevauchement avec un en-tête fixe
  • La pseudo-classe :target met en évidence la section actuelle
Gratuit pour commencer

Apprends HTML avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
40
Leçons
159

Questions Fréquemment Posées

La leçon « Créer des liens vers des sections avec les identifiants de fragment » est-elle gratuite ?

Oui — le texte complet de « Créer des liens vers des sections avec les identifiants de fragment » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours HTML Academy, passe à CoddyKit PRO. Le cours HTML Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Créer des liens vers des sections avec les identifiants de fragment » ?

Accédez directement aux sections d’une page avec les attributs id et les liens d’ancrage. Tu pratiques HTML Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer HTML Academy ?

Aucune expérience préalable n'est requise. HTML Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Créer des liens vers des sections avec les identifiants de fragment » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon HTML Academy ?

Oui. Chaque leçon HTML Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. L’élément anchor et l’attribut href
  2. URL absolues ou relatives
  3. Ouvrir des liens dans de nouveaux onglets et attribut download
  4. Créer des liens vers des sections avec les identifiants de fragment
← Retour à HTML Academy