🌐
W3Schools
w3schools.com › tags › tag_dl.asp
HTML dl tag
The <dl> tag defines a description list. The <dl> tag is used in conjunction with <dt> (defines terms/names) and <dd> (describes each term/name). The <dl> tag also supports the Global Attributes in HTML.
🌐
MDN Web Docs
developer.mozilla.org › en-US › docs › Web › HTML › Reference › Elements › dl
<dl>: The Description List element - HTML | MDN
The HTML element represents a description list. The element encloses a list of groups of terms (specified using the element) and descriptions (provided by elements). Common uses for this element are to implement a glossary or to display metadata (a list of key-value pairs).
🌐
GeeksforGeeks
geeksforgeeks.org › html › html-description-lists
HTML Description Lists - GeeksforGeeks
December 16, 2024 - A nested description list is when we add a description list inside another description list. This allows for organizing related terms and their definitions in a hierarchical structure, as demonstrated in the example: ... <!DOCTYPE html> <html> <head> <title>Nested Description List</title> </head> <body> <h3>Technology Overview</h3> <dl> <dt>Hardware</dt> <dd>Physical devices</dd> <dd> <dl> <!-- Nested Description List for Hardware Types --> <dt>CPUs</dt> <dd>Processors</dd> <dt>GPUs</dt> <dd>Graphics</dd> </dl> </dd> <dt>Software</dt> <dd>Programs/Apps</dd> <dd> <dl> <!-- Nested Description List for Software Types --> <dt>System</dt> <dd>OS</dd> <dt>Application</dt> <dd>Tools</dd> </dl> </dd> </dl> </body> </html>
🌐
Reddit
reddit.com › r/accessibility › i am confused about usage of description (definition) lists in htm
r/accessibility on Reddit: I am confused about usage of description (definition) lists in HTM
November 2, 2023 -

We surely can have nested ul and ol, but I am not sure if we can have nested dls.

I need to display information about someone's balance with different currencies. Say, we have following data:

User's balance:
1,234.56 USD
1,234.56 EUR
1,234.56 JPY

And according to design I would display this data in following markup:

<dl>
  <dt>Balance</dt>
  <dd>
    <dt class="visuallyhidden">USD balance</dt>
    <dd>1,234.56 USD</dd>
    <dt> class="visuallyhidden">EUR balance</dt>
    <dd>1,234.56 EUR</dd>
    <dt> class="visuallyhidden">JPY balance</dt>
    <dd>1,234.56 JPY</dd>
  </dd>
</dl>

Would this be accessible layout? Or should I consider other markup, for example with unordered lists and titles inside them?

🌐
Tutorialspoint
tutorialspoint.com › html › html_definition_lists.htm
HTML - Definition Lists
A description list is defined by <dl> tag along with the <dt> and <dd> tags. Where <dt> tag defines the definition term, and <dd> tag defines the corresponding definition. HTML definition lists define list items having the structure of terms ...
🌐
Oidaisdes
oidaisdes.org › blog › description-list-html-element
How the Description List Element improves Accessibility and the Developer Experience
April 2, 2023 - Every web developer knows the HTML elements <ul> and <ol> for unordered and ordered lists. Yet few are familiar with their close relative <dl> , the description list. A typical use case for the element is to implement a glossary with terms and definitions. In fact, you can do a lot more with it.
🌐
Programiz
programiz.com › html › description-list
HTML Description List (With Examples)
As we have seen, the definition list is used to display data in a key/value format, where the <dt> tag indicates the key elements and the <dd> tag element indicates the value (definition) of the key.
🌐
W3Schools
w3schools.com › html › html_lists.asp
HTML Lists
For a complete list of all available HTML tags, visit our HTML Tag Reference. ... If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail: sales@w3schools.com
Find elsewhere
🌐
Textile-lang
textile-lang.com › doc › definition-lists
Definition lists / Textile Markup Language Documentation
Each term in a definition list starts with a dash. Put a := between the term and the definition. If your definition spans multiple lines, end the definition with =:. - HTML := HyperText Markup Language, based on SGML. - XHTML := HTML 4.0 rewritten to be compliant with XML rules.
🌐
W3Schools
w3schools.com › tags › tag_dd.asp
HTML dd tag
The <dd> tag is used in conjunction with <dl> (defines a description list) and <dt> (defines terms/names).
🌐
Benmeadowcroft
benmeadowcroft.com › webdev › articles › definition-lists
Definition Lists. , and – BenMeadowcroft.com
This article explains what definition lists are why they are useful, and how use them when writing HTML documents. The idea for writing this article came to me when browsing a web site which was providing glossaries of internet terms, in looking at the source code for the page I was struck by the fact that the author was using heading tags such as <h3> followed by a paragraph tag <p> to present the information.
🌐
CodeWithHarry
codewithharry.com › tutorial › html-definition-list-tutorial
Definition Lists | HTML Tutorial | CodeWithHarry
A Definition List in HTML is used to represent a list of terms along with their corresponding descriptions or definitions.
🌐
GeeksforGeeks
geeksforgeeks.org › html › html-lists
HTML Lists - GeeksforGeeks
January 20, 2026 - An HTML list organizes content into ordered or unordered formats, making information clear and easy to read.
🌐
Dremendo
dremendo.com › html-tutorial › html-description-list-tag
Description List in HTML | Dremendo
A description list in HTML displays a list of terms and their corresponding definitions. The dl tag is used to define a description list. The description list tag is usually used with two other tags: dt and dd.
Top answer
1 of 3
6

If you are using HTML 4.01, you shouldn't use dl as it's defined as "definition list" (and your example does not consist of terms and their definitions). If you are using HTML5, the use of dl is fine, because the definition of dl changed.

Using headings inside of li might be a bit problematic regarding the document outline. The scope of a heading would include the start of the next li: <li><!--scope start--><h3>title</h3><p>description</p></li><li><!--scope end--><h3>…. By using section (resp. article), this could be avoided.

So, for HTML5, I think the following ways are possible:

dl

<dl>

  <dt>Title1</dt>
  <dd>Description1</dd>

  <dt>Title2</dt>
  <dd>Description2</dd>

</dl>

That would be my favorite, if you only want to provide title and description for each show (if not, see the last example).

ul + section

<ul>

  <li>
    <section>
      <h1>Title1</h1>
      <p>Description1</p>
    </section>
  </li>

  <li>
    <section>
      <h1>Title2</h1>
      <p>Description2</p>
    </section>
  </li>

</ul>

I don't like that very much. The list isn't adding much here, so why not omit it? (see next example)

headings only

<section>
  <h1>Title1</h1>
  <p>Description1</p>
</section>

<section>
  <h1>Title2</h1>
  <p>Description2</p>
</section>

Instead of section the article element might be possible, too.

You could also omit section (or article) and use headings only (in the case of section it wouldn't change the meaning); in that case you'd need to apply the correct heading level.

headings + dl

If you want to provide additional metadata (maybe in the future), I'd go with the following markup:

<section>
  <h1>Title1</h1>
  <dl>
    <dt>Description</dt>
    <dd>…</dd>
    <dt>Rating</dt>
    <dd>…</dd>
    <dt>Time</dt>
    <dd>…</dd>
    <dt>Length</dt>
    <dd>…</dd>
  </dl>
</section>
2 of 3
2

I prefer the former. First, it seems to make more sense to me just based on the content.

But that's me. I think the markup should reflect the document structure, and since (as you say) the CSS can style it either way, why not make the markup reflect the content? A list containing items that contain a header for a title, followed by a description seems a bit of overkill to me.

But, hey. You know what they say about opinions.

🌐
W3C
w3.org › MarkUp › html3 › deflists.html
Definition Lists
A definition list is a list of terms and corresponding definitions. Definition lists are typically formatted with the term on the left with the definition following on the right or on the next line. The definition text is typically indented with respect to the term.
🌐
IBM
ibm.com › docs › en › zos › 3.1.0
Definition lists
We cannot provide a description for this page right now
🌐
W3Schools
w3schools.com › html › html_lists_other.asp
HTML Other Lists
For a complete list of all available HTML tags, visit our HTML Tag Reference. ... If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail: sales@w3schools.com
🌐
Medium
bloycey.medium.com › how-to-style-dl-dt-and-dd-html-tags-ced1229deda0
How to style dl, dt, and dd HTML tags | by Andrew Bloyce | Medium
December 22, 2021 - One element that needed some love was the <dl> tag and it’s companions <dt> and <dd>. If you haven’t head of these tags it’s worth reading up on them, because once you understand their purpose you’ll be seeing places to use them everywhere! In short “dl” stands for “Definition List” ...
🌐
Simplilearn
simplilearn.com › home › resources › software development › html list tag: the best way to implement it
HTML List Tag: The Best Way to Implement It
September 11, 2025 - What is an HTML list? The HTML list tag helps group related information, learn the ✅HTML unordered lists ✅HTML ordered lists ✅HTML description lists.
Address   5851 Legacy Circle, 6th Floor, Plano, TX 75024 United States