Existe-t-il une raison logique d'utiliser les balises <dl>, <dt> et <dd> au lieu de balises <ul> et <ol> imbriquées et de style CSS? Ou s'agit-il simplement d'un groupe de balises obsolètes en attente d'être obsolète?
Citant la spécification W3C :
L'élément dl représente une liste d'associations composée de zéro ou de plusieurs groupes de noms-valeurs (une liste de description). Chaque groupe doit être composé d’un ou de plusieurs noms (éléments dt) suivis d’une ou de plusieurs valeurs (éléments dd). Dans un seul élément dl, il ne devrait pas y avoir plus d'un élément dt pour chaque nom.
La raison principale pour les balises <dl>
, <dt>
et <dd>
est donc de préserver la connexion sémantique de ces paires nom-valeur, qui seraient perdues si vous utilisiez des listes imbriquées.
Si vous utilisez des listes imbriquées, cela peut être fait pour diverses raisons (actuellement, par exemple, de nombreux menus sont structurés en listes imbriquées) et les robots ou tout autre système respectant les annotations sémantiques ne pourront pas faire la différence.
Si vous utilisez les balises ci-dessus, toutefois, un système peut voir la connexion et agir en conséquence. Donc, une utilisation future pourrait peut-être extraire toutes les définitions de termes dans un document plus grand afin de créer une sorte de glossaire.
De la documentation W3C :
Les listes de définitions ne diffèrent que légèrement des autres types de listes de ce type Les éléments de la liste se composent de deux parties: un terme et une description. Le terme est donné par l'élément DT et est limité au contenu en ligne. Le la description est donnée avec un élément DD qui contient le niveau de bloc contenu.
Il y a quelques exemples de balises sur la page W3C.