Essayer de coder ← Retour aux sujets

Liens hypertextes

<a href>

<a> crée un lien. L'attribut href donne la destination : une page du site, un autre site, un endroit précis de la page, une adresse e-mail…

<a href="cours.html">Le cours</a>
Page du même dossier (chemin relatif)
<a href="https://www.python.org">Python</a>
Autre site (adresse absolue)
<a href="#conclusion">Fin</a>
Ancre : saute à l'élément d'id="conclusion"
<a href="mailto:eleve@exemple.fr">Écrire</a>
Ouvre le logiciel de messagerie
<a href="sujet.pdf" download>
Télécharge le fichier au lieu de l'ouvrir
target="_blank" rel="noopener"
Ouvre dans un nouvel onglet, en sécurité
liens.html
<nav>
  <a href="index.html">Accueil</a> |
  <a href="cours/python.html">Python</a> |
  <a href="https://developer.mozilla.org/fr/" target="_blank" rel="noopener">MDN</a>
</nav>
<h2 id="conclusion">Conclusion</h2>
<a href="#conclusion">Aller à la conclusion</a>
Rendu
Trois liens séparés par des barres ; le dernier s'ouvre dans un nouvel onglet. Le lien du bas fait défiler jusqu'au titre « Conclusion ».

Images

<img>

<img> insère une image. src donne son chemin, alt son texte de remplacement (obligatoire), width et height réservent la place avant le chargement.

<img src="photo.jpg" alt="Équipe de robotique">
Image et description
<img src="logo.svg" alt="" width="64" height="64">
alt vide : image purement décorative
<img src="grande.jpg" alt="…" loading="lazy">
Chargée seulement quand elle approche de l'écran
<a href="p.html"><img src="i.png" alt="Ouvrir"></a>
Image cliquable : le alt décrit la destination
<figure> … <figcaption>Légende</figcaption> </figure>
Image avec sa légende
images.html
<figure>
  <img src="images/sinus.png" alt="Courbe de la fonction sinus" width="320" height="200">
  <figcaption>La fonction sinus sur une période.</figcaption>
</figure>
<p>
  <a href="python.html"><img src="images/python.png" alt="Aller à la fiche Python" width="48" height="48"></a>
</p>
Rendu
Une courbe avec sa légende dessous, puis un petit logo cliquable qui mène à la fiche Python.

🔗 Le cours : relier les pages et illustrer

Le « H » de HTML, c'est l'hypertexte : des documents reliés entre eux par des liens. Pour qu'un lien ou une image fonctionne, il faut écrire correctement son chemin (l'adresse du fichier). C'est la compétence clé de cette fiche.

Chemins relatifs et absolus

Un chemin relatif part de l'endroit où se trouve la page qui contient le lien. Un chemin absolu donne l'adresse complète. Pour un site que l'on déplace d'un dossier à un autre (ou d'un ordinateur à un serveur), on préfère les chemins relatifs.

ÉcritureSignification
page.htmlfichier du même dossier que la page actuelle
cours/page.htmlfichier du sous-dossier cours
../page.htmlfichier du dossier parent (.. = on remonte d'un niveau)
/page.htmlfichier à la racine du site
https://exemple.fr/page.htmladresse absolue, sur n'importe quel site
site/
├── index.html
├── images/
│   └── logo.png
└── cours/
    ├── python.html
    └── c.html

Depuis index.html, le logo s'écrit images/logo.png et la fiche Python cours/python.html. Depuis cours/python.html, le logo s'écrit ../images/logo.png (on remonte d'un dossier, puis on descend dans images) et la fiche C simplement c.html.

cours/python.html
<!-- Cette page est dans le dossier cours/ -->
<a href="c.html">Voir la fiche C</a>
<a href="../index.html">Retour à l'accueil</a>
<img src="../images/logo.png" alt="Logo du site">

Les ancres : aller à un endroit précis

N'importe quel élément peut recevoir un identifiant unique avec l'attribut id. Un lien dont le href commence par # y fait défiler la page. On peut cibler une ancre d'une autre page : cours.html#recherche. C'est la base d'une table des matières.

sommaire.html
<ul>
  <li><a href="#intro">Introduction</a></li>
  <li><a href="#methode">Méthode</a></li>
</ul>

<h2 id="intro">Introduction</h2>
<p>…</p>
<h2 id="methode">Méthode</h2>
<p>…</p>

Nouvel onglet et sécurité

target="_blank" ouvre le lien dans un nouvel onglet. Ajoute rel="noopener" : sans cela, la page ouverte pourrait agir sur la page d'origine. N'ouvre un nouvel onglet que pour un site extérieur ; pour naviguer dans ton site, laisse le comportement normal.

Bien écrire le texte d'un lien

Le texte d'un lien doit se comprendre seul : les lecteurs d'écran peuvent lister tous les liens d'une page.

À éviter
faux.html
<p>Pour le sujet, <a href="sujet.pdf">cliquez ici</a>.</p>
Correct
correct.html
<p><a href="sujet.pdf">Télécharger le sujet (PDF, 2 Mo)</a></p>

Autres destinations

BesoinCode
écrire un e-mail<a href="mailto:eleve@exemple.fr">Nous écrire</a>
appeler (téléphone)<a href="tel:+33123456789">01 23 45 67 89</a>
télécharger un fichier<a href="exercices.zip" download>Exercices (ZIP)</a>

Les images : src, alt, taille

alt remplace l'image quand elle ne s'affiche pas et est lu par les lecteurs d'écran : il décrit ce que l'image apporte. Pour une image purement décorative, écris alt="" (vide) : elle sera ignorée. width et height (en pixels, sans unité) permettent au navigateur de réserver la place avant le chargement, ce qui évite que le texte « saute ». loading="lazy" retarde le chargement des images hors écran.

FormatQuand l'utiliser
JPEG (.jpg)photographies (compression avec perte)
PNGschémas, captures d'écran, transparence
WebPphotos et schémas, plus léger que JPEG et PNG
SVGlogos et icônes : dessin vectoriel qui reste net à toute taille
GIFpetites animations

Une image de plusieurs mégaoctets ralentit toute la page : redimensionne-la avant de la publier à la taille réellement affichée.

figure et figcaption

<figure> regroupe une illustration et sa légende <figcaption> : le lien entre les deux est ainsi explicite (exemple de la deuxième carte).

⚠️ Erreurs fréquentes

Un chemin qui ne marche que sur ton ordinateur

À éviter
faux.html
<img src="C:\Users\lina\Images\logo.png" alt="Logo">   <!-- n'existe que chez toi -->
Correct
correct.html
<img src="images/logo.png" alt="Logo">   <!-- relatif au site -->

Se tromper de majuscule dans un nom de fichier

Sur ton ordinateur Windows, Logo.PNG et logo.png désignent le même fichier ; sur un serveur (Linux), non. Une image qui s'affiche en local peut disparaître une fois le site publié. Prends l'habitude de nommer les fichiers en minuscules, sans accents ni espaces (mon-logo.png).

Oublier l'attribut alt

Sans alt, un lecteur d'écran lit le nom du fichier (« img_4821.jpg »), et si l'image ne charge pas, la page montre un trou. Écris toujours alt, vide seulement pour une image décorative.

Un lien sans href

<a>Texte</a> n'est pas cliquable : il lui faut un href. Pour un bouton qui déclenche une action JavaScript, utilise plutôt <button>.

Ouvrir tous les liens dans un nouvel onglet

Forcer un nouvel onglet à chaque lien désoriente l'utilisateur, qui ne peut plus utiliser le bouton « Précédent ». Réserve-le aux sites extérieurs, avec rel="noopener".

Des espaces ou des accents dans les noms de fichiers

mon cours.html devient mon%20cours.html dans l'adresse et casse facilement. Préfère mon-cours.html.

📋 Aide-mémoire

  • <a href="…">texte</a> : lien ; page.html (même dossier), dossier/page.html, ../page.html (dossier parent), https://… (autre site).
  • Ancre : id="nom" sur la cible, href="#nom" sur le lien.
  • Autres liens : mailto:, tel:, download ; extérieur : target="_blank" rel="noopener".
  • <img src="…" alt="…" width="…" height="…"> : alt toujours présent (vide si décorative).
  • Formats : JPEG (photos), PNG (schémas), WebP (léger), SVG (vectoriel).
  • Fichiers en minuscules, sans espaces ni accents ; texte de lien explicite (jamais « cliquez ici »).