Skip to main content
Mediaweb Logo

Mediaweb

Html Guide

Listes en HTML : Ordonnées, Non Ordonnées et de Définition Expliquées

Maîtrisez les listes HTML avec ce guide complet couvrant les éléments ul, ol et dl, les techniques d'imbrication, le stylisme avec CSS et les meilleures pratiques d'accessibilité.

September 4, 2025
10 min de lecture
HTML
listes
ul
ol
dl
structure

Comprendre les Types de Listes HTML

HTML fournit trois types principaux de listes, chacun servant des objectifs différents :

  1. Listes Non Ordonnées (<ul>) - Pour les éléments sans ordre spécifique
  2. Listes Ordonnées (<ol>) - Pour les éléments séquentiels ou classés
  3. Listes de Définition (<dl>) - Pour les paires terme-définition

Explorons chaque type en détail.

L'Élément <ul> pour les Listes à Puces

Les listes non ordonnées sont parfaites pour regrouper des éléments liés où l'ordre n'a pas d'importance. Elles sont couramment utilisées pour les menus de navigation, les listes de fonctionnalités et l'organisation générale du contenu.

Syntaxe de Base des Listes Non Ordonnées

<ul>
  <li>Premier élément</li>
  <li>Deuxième élément</li>
  <li>Troisième élément</li>
</ul>

Exemples du Monde Réel

Menu de Navigation :

<nav>
  <ul>
    <li><a href="/">Accueil</a></li>
    <li><a href="/a-propos">À Propos</a></li>
    <li><a href="/services">Services</a></li>
    <li><a href="/contact">Contact</a></li>
  </ul>
</nav>

Liste de Fonctionnalités :

<ul>
  <li>Design responsive</li>
  <li>Temps de chargement rapides</li>
  <li>Optimisé pour le SEO</li>
  <li>Compatible mobile</li>
  <li>Compatible multi-navigateurs</li>
</ul>

Liste de Courses :

<ul>
  <li>Lait</li>
  <li>Pain</li>
  <li>Œufs</li>
  <li>Fromage</li>
  <li>Pommes</li>
</ul>

Attributs des Listes Non Ordonnées

Bien que le CSS moderne gère la plupart du stylisme, vous pouvez encore utiliser l'attribut type :

<ul type="disc">   <!-- Par défaut : cercles pleins -->
<ul type="circle"> <!-- Cercles vides -->
<ul type="square"> <!-- Carrés pleins -->

Note : L'attribut type est déprécié en HTML5. Utilisez CSS à la place pour le stylisme.

L'Élément <ol> pour les Listes Numérotées

Les listes ordonnées sont idéales quand la séquence ou le classement des éléments compte. Elles sont parfaites pour les instructions, les classements et les processus étape par étape.

Syntaxe de Base des Listes Ordonnées

<ol>
  <li>Première étape</li>
  <li>Deuxième étape</li>
  <li>Troisième étape</li>
</ol>

Attributs des Listes Ordonnées

Attribut Start :

<ol start="5">
  <li>Cinquième élément</li>
  <li>Sixième élément</li>
  <li>Septième élément</li>
</ol>

Attribut Type :

<ol type="1">  <!-- 1, 2, 3 (par défaut) -->
<ol type="A">  <!-- A, B, C -->
<ol type="a">  <!-- a, b, c -->
<ol type="I">  <!-- I, II, III -->
<ol type="i">  <!-- i, ii, iii -->

Attribut Reversed :

<ol reversed>
  <li>Troisième place</li>
  <li>Deuxième place</li>
  <li>Première place</li>
</ol>
<!-- Affiche : 3. Troisième place, 2. Deuxième place, 1. Première place -->

Exemples du Monde Réel

Instructions de Recette :

<h3>Comment Faire des Cookies aux Pépites de Chocolat</h3>
<ol>
  <li>Préchauffer le four à 190°C</li>
  <li>Mélanger la farine, le bicarbonate et le sel dans un bol</li>
  <li>Battre le beurre et les sucres dans un bol séparé</li>
  <li>Ajouter les œufs et la vanille au mélange de beurre</li>
  <li>Incorporer graduellement le mélange de farine</li>
  <li>Ajouter les pépites de chocolat</li>
  <li>Déposer des cuillères à soupe sur des plaques non graissées</li>
  <li>Cuire 9-11 minutes jusqu'à ce qu'ils soient dorés</li>
</ol>

Top 5 des Langages de Programmation :

<h3>Langages de Programmation les Plus Populaires 2024</h3>
<ol>
  <li>JavaScript</li>
  <li>Python</li>
  <li>Java</li>
  <li>TypeScript</li>
  <li>C#</li>
</ol>

Étapes d'Installation :

<h3>Guide d'Installation du Logiciel</h3>
<ol>
  <li>Télécharger l'installateur depuis notre site web</li>
  <li>Exécuter l'installateur en tant qu'administrateur</li>
  <li>Accepter l'accord de licence</li>
  <li>Choisir le répertoire d'installation</li>
  <li>Sélectionner les composants à installer</li>
  <li>Cliquer sur "Installer" et attendre la fin</li>
  <li>Redémarrer votre ordinateur quand demandé</li>
</ol>

Imbrication des Listes

Vous pouvez imbriquer des listes à l'intérieur d'autres listes pour créer des structures hiérarchiques. C'est utile pour créer des sous-menus, des plans détaillés et des structures organisationnelles complexes.

Imbrication de Listes Non Ordonnées

<ul>
  <li>Développement Web
    <ul>
      <li>Frontend
        <ul>
          <li>HTML</li>
          <li>CSS</li>
          <li>JavaScript</li>
        </ul>
      </li>
      <li>Backend
        <ul>
          <li>Node.js</li>
          <li>Python</li>
          <li>PHP</li>
        </ul>
      </li>
    </ul>
  </li>
  <li>Développement Mobile
    <ul>
      <li>iOS</li>
      <li>Android</li>
      <li>React Native</li>
    </ul>
  </li>
</ul>

Imbrication de Listes Ordonnées

<ol>
  <li>Phase de Planification
    <ol type="a">
      <li>Définir les exigences</li>
      <li>Créer les wireframes</li>
      <li>Concevoir les maquettes</li>
    </ol>
  </li>
  <li>Phase de Développement
    <ol type="a">
      <li>Configurer l'environnement de développement</li>
      <li>Construire les fonctionnalités principales</li>
      <li>Implémenter l'interface utilisateur</li>
    </ol>
  </li>
  <li>Phase de Test
    <ol type="a">
      <li>Tests unitaires</li>
      <li>Tests d'intégration</li>
      <li>Tests d'acceptation utilisateur</li>
    </ol>
  </li>
</ol>

Listes Imbriquées Mixtes

<ol>
  <li>Options de Petit-Déjeuner
    <ul>
      <li>Céréales
        <ul>
          <li>Cornflakes</li>
          <li>Flocons d'avoine</li>
          <li>Granola</li>
        </ul>
      </li>
      <li>Options Chaudes
        <ul>
          <li>Crêpes</li>
          <li>Gaufres</li>
          <li>Pain Perdu</li>
        </ul>
      </li>
    </ul>
  </li>
  <li>Options de Déjeuner
    <ul>
      <li>Sandwichs</li>
      <li>Salades</li>
      <li>Soupes</li>
    </ul>
  </li>
</ol>

Utiliser <dl>, <dt> et <dd> pour les Définitions

Les listes de définition sont parfaites pour les glossaires, FAQ, spécifications de produits et tout contenu qui associe des termes à leurs descriptions.

Structure des Listes de Définition

<dl>
  <dt>Terme 1</dt>
  <dd>Définition ou description du terme 1</dd>
  
  <dt>Terme 2</dt>
  <dd>Définition ou description du terme 2</dd>
</dl>

Exemples du Monde Réel

Glossaire :

<dl>
  <dt>HTML</dt>
  <dd>HyperText Markup Language - le langage de balisage standard pour créer des pages web</dd>
  
  <dt>CSS</dt>
  <dd>Cascading Style Sheets - utilisé pour décrire la présentation d'un document écrit en HTML</dd>
  
  <dt>JavaScript</dt>
  <dd>Un langage de programmation qui permet des pages web interactives et du contenu dynamique</dd>
  
  <dt>Design Responsive</dt>
  <dd>Une approche du design web qui fait que les pages web s'affichent bien sur divers appareils et tailles d'écran</dd>
</dl>

Spécifications de Produit :

<dl>
  <dt>Taille d'Écran</dt>
  <dd>15,6 pouces</dd>
  
  <dt>Résolution</dt>
  <dd>1920 x 1080 pixels</dd>
  
  <dt>Processeur</dt>
  <dd>Intel Core i7-11800H</dd>
  
  <dt>Mémoire</dt>
  <dd>16GB DDR4 RAM</dd>
  
  <dt>Stockage</dt>
  <dd>512GB SSD</dd>
  
  <dt>Poids</dt>
  <dd>1,9 kg</dd>
</dl>

Section FAQ :

<dl>
  <dt>Quelle est votre politique de retour ?</dt>
  <dd>Nous offrons une politique de retour de 30 jours pour tous les articles non utilisés dans leur emballage d'origine. Les frais de retour sont à la charge du client sauf si l'article était défectueux.</dd>
  
  <dt>Combien de temps prend la livraison ?</dt>
  <dd>La livraison standard prend 3-5 jours ouvrables. La livraison express prend 1-2 jours ouvrables. La livraison internationale varie selon la localisation.</dd>
  
  <dt>Offrez-vous un support client ?</dt>
  <dd>Oui, nous fournissons un support client 24/7 par email, téléphone et chat en direct. Notre équipe de support est toujours prête à aider avec toute question ou problème.</dd>
</dl>

Descriptions Multiples

Un terme peut avoir plusieurs descriptions :

<dl>
  <dt>JavaScript</dt>
  <dd>Un langage de programmation de haut niveau</dd>
  <dd>Couramment utilisé pour le développement web</dd>
  <dd>Supporte les paradigmes de programmation orientée objet et fonctionnelle</dd>
  
  <dt>Python</dt>
  <dd>Un langage de programmation interprété de haut niveau</dd>
  <dd>Connu pour sa syntaxe simple et lisible</dd>
  <dd>Populaire pour la science des données, le développement web et l'automatisation</dd>
</dl>

Termes Multiples, Une Description

Plusieurs termes peuvent partager la même description :

<dl>
  <dt>Frontend</dt>
  <dt>Côté Client</dt>
  <dt>Interface Utilisateur</dt>
  <dd>La partie d'un site web ou d'une application avec laquelle les utilisateurs interagissent directement</dd>
  
  <dt>Backend</dt>
  <dt>Côté Serveur</dt>
  <dd>La logique côté serveur et l'infrastructure qui alimentent un site web ou une application</dd>
</dl>

Styliser les Listes avec CSS

Bien que HTML fournisse la structure, CSS donne vie aux listes avec un stylisme personnalisé.

Stylisme de Base des Listes

/* Supprimer le stylisme par défaut */
ul, ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Puces personnalisées */
ul li {
  position: relative;
  padding-left: 20px;
}

ul li::before {
  content: "•";
  color: #007bff;
  font-weight: bold;
  position: absolute;
  left: 0;
}

Listes de Navigation Horizontales

.nav-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 20px;
}

.nav-list li {
  display: inline-block;
}

.nav-list a {
  text-decoration: none;
  color: #333;
  padding: 10px 15px;
  border-radius: 5px;
  transition: background-color 0.3s;
}

.nav-list a:hover {
  background-color: #f0f0f0;
}
<ul class="nav-list">
  <li><a href="/">Accueil</a></li>
  <li><a href="/a-propos">À Propos</a></li>
  <li><a href="/services">Services</a></li>
  <li><a href="/contact">Contact</a></li>
</ul>

Listes Ordonnées Stylisées

.custom-ordered {
  counter-reset: item;
  padding: 0;
  list-style: none;
}

.custom-ordered li {
  counter-increment: item;
  margin-bottom: 10px;
  padding-left: 40px;
  position: relative;
}

.custom-ordered li::before {
  content: counter(item);
  background: #007bff;
  color: white;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  top: 0;
  font-weight: bold;
  font-size: 14px;
}

Stylisme des Listes de Définition

.styled-dl {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 10px 20px;
  max-width: 600px;
}

.styled-dl dt {
  font-weight: bold;
  color: #333;
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}

.styled-dl dd {
  padding: 10px 0;
  margin: 0;
  border-bottom: 1px solid #eee;
  color: #666;
}

Stylisme des Listes Imbriquées

.nested-list {
  list-style: none;
  padding: 0;
}

.nested-list li {
  margin: 5px 0;
  padding-left: 20px;
  position: relative;
}

.nested-list > li::before {
  content: "▶";
  position: absolute;
  left: 0;
  color: #007bff;
}

.nested-list ul {
  margin-top: 10px;
  padding-left: 20px;
}

.nested-list ul li::before {
  content: "▸";
  color: #666;
}

Meilleures Pratiques d'Accessibilité

Rendre les listes accessibles assure que tous les utilisateurs peuvent naviguer et comprendre votre contenu efficacement.

HTML Sémantique

<!-- Bon : Navigation sémantique -->
<nav aria-label="Navigation principale">
  <ul>
    <li><a href="/" aria-current="page">Accueil</a></li>
    <li><a href="/a-propos">À Propos</a></li>
    <li><a href="/contact">Contact</a></li>
  </ul>
</nav>

<!-- Bon : Objectif de liste clair -->
<h3>Documents Requis</h3>
<ul>
  <li>Permis de conduire ou pièce d'identité</li>
  <li>Preuve de revenus</li>
  <li>Relevés bancaires</li>
</ul>

Étiquettes et Descriptions ARIA

<ul aria-label="Liens de réseaux sociaux">
  <li><a href="#" aria-label="Suivez-nous sur Facebook">Facebook</a></li>
  <li><a href="#" aria-label="Suivez-nous sur Twitter">Twitter</a></li>
  <li><a href="#" aria-label="Suivez-nous sur Instagram">Instagram</a></li>
</ul>
/* Assurer que les indicateurs de focus sont visibles */
.nav-list a:focus {
  outline: 2px solid #007bff;
  outline-offset: 2px;
}

/* Lien de saut au contenu */
.skip-link {
  position: absolute;
  top: -40px;
  left: 6px;
  background: #000;
  color: white;
  padding: 8px;
  text-decoration: none;
  z-index: 1000;
}

.skip-link:focus {
  top: 6px;
}

Erreurs Communes de Listes à Éviter

1. Utiliser les Listes Uniquement pour la Mise en Page

<!-- Incorrect : Utiliser les listes juste pour le stylisme -->
<ul>
  <li><div>Pas vraiment du contenu lié</div></li>
  <li><div>Juste utilisé pour le stylisme CSS</div></li>
</ul>

<!-- Correct : Utiliser les éléments appropriés -->
<div class="card-grid">
  <div class="card">Contenu 1</div>
  <div class="card">Contenu 2</div>
</div>

2. Éléments de Liste Manquants

<!-- Incorrect : Contenu direct dans la liste -->
<ul>
  Du texte directement dans la liste
  <li>Premier élément</li>
  <li>Deuxième élément</li>
</ul>

<!-- Correct : Tout le contenu dans des éléments de liste -->
<ul>
  <li>Du texte dans un élément de liste</li>
  <li>Premier élément</li>
  <li>Deuxième élément</li>
</ul>

3. Imbrication Incorrecte

<!-- Incorrect : Élément de liste en dehors du parent -->
<ul>
  <li>Élément 1</li>
  <li>Élément 2</li>
</ul>
<li>Élément orphelin</li>

<!-- Correct : Imbrication appropriée -->
<ul>
  <li>Élément 1</li>
  <li>Élément 2</li>
  <li>Élément 3</li>
</ul>

4. Utiliser le Mauvais Type de Liste

<!-- Incorrect : Liste non ordonnée pour des étapes -->
<ul>
  <li>D'abord, faire ceci</li>
  <li>Ensuite, faire cela</li>
  <li>Enfin, faire ceci</li>
</ul>

<!-- Correct : Liste ordonnée pour des étapes séquentielles -->
<ol>
  <li>D'abord, faire ceci</li>
  <li>Ensuite, faire cela</li>
  <li>Enfin, faire ceci</li>
</ol>

Techniques de Listes Avancées

Compteurs de Listes Personnalisés

.custom-counter {
  counter-reset: section;
  list-style: none;
  padding: 0;
}

.custom-counter li {
  counter-increment: section;
  margin-bottom: 10px;
}

.custom-counter li::before {
  content: "Étape " counter(section) " : ";
  font-weight: bold;
  color: #007bff;
}

Listes Interactives

<ul class="interactive-list">
  <li>
    <input type="checkbox" id="task1">
    <label for="task1">Terminer la proposition de projet</label>
  </li>
  <li>
    <input type="checkbox" id="task2">
    <label for="task2">Réviser les commentaires du client</label>
  </li>
  <li>
    <input type="checkbox" id="task3">
    <label for="task3">Mettre à jour le calendrier du projet</label>
  </li>
</ul>
.interactive-list {
  list-style: none;
  padding: 0;
}

.interactive-list li {
  margin: 10px 0;
  padding: 10px;
  background: #f9f9f9;
  border-radius: 5px;
}

.interactive-list input[type="checkbox"] {
  margin-right: 10px;
}

.interactive-list input[type="checkbox"]:checked + label {
  text-decoration: line-through;
  color: #666;
}

Résumé des Meilleures Pratiques

  1. Choisir le bon type de liste basé sur le sens du contenu
  2. Utiliser du HTML sémantique pour une meilleure accessibilité et SEO
  3. Fournir des titres clairs pour introduire le contenu des listes
  4. Styliser avec CSS plutôt qu'avec des attributs HTML dépréciés
  5. Assurer l'accessibilité au clavier pour les listes interactives
  6. Utiliser des étiquettes ARIA quand l'objectif de la liste n'est pas clair
  7. Imbriquer correctement et valider votre HTML
  8. Tester avec des lecteurs d'écran pour assurer l'accessibilité
  9. Garder les éléments de liste concis et scannables
  10. Utiliser un formatage cohérent sur tout votre site

Conclusion

Les listes HTML sont des outils puissants pour organiser et présenter l'information efficacement. En comprenant quand et comment utiliser les listes non ordonnées, ordonnées et de définition, vous pouvez créer du contenu web bien structuré, accessible et convivial.

Rappelez-vous que la clé d'une utilisation efficace des listes est de choisir le bon type pour le sens et l'objectif de votre contenu. Combiné avec un stylisme CSS réfléchi et des considérations d'accessibilité, les listes deviennent des éléments de construction essentiels pour créer des expériences web engageantes et professionnelles.

Commencez à implémenter ces techniques de listes dans vos projets, et vous remarquerez une amélioration de l'organisation du contenu, une meilleure expérience utilisateur et une accessibilité renforcée sur vos sites web.

Dernière mise à jour: October 3, 2025

Articles Connexes

Continuez votre lecture avec ces articles connexes