How to add description list of an element using HTML?

HTML description lists are used to display terms and their corresponding descriptions in a structured format. They are created using three specific HTML tags: <dl> (description list), <dt> (description term), and <dd> (description definition).

Description lists are commonly used for glossaries, metadata, question-answer pairs, and any content where terms need to be paired with their definitions or descriptions.

Syntax

Following is the basic syntax for creating a description list

<dl>
   <dt>Term 1</dt>
   <dd>Description for Term 1</dd>
   <dt>Term 2</dt>
   <dd>Description for Term 2</dd>
</dl>

Where

  • <dl> Defines the description list container
  • <dt> Defines the description term (the name/title)
  • <dd> Defines the description definition (the explanation)

HTML Description List Tags

<dl> Tag

The <dl> tag represents the description list container. It wraps all the terms and definitions, creating a semantic grouping of related term-description pairs.

<dt> Tag

The <dt> tag defines the description term. It contains the name, title, or term that will be described. Multiple <dt> elements can share the same description.

<dd> Tag

The <dd> tag defines the description definition. It contains the explanation, description, or definition of the preceding term(s). One or more <dd> elements can follow a <dt> element.

Description List Structure <dl> <dt>JavaScript</dt> <dd>A programming language...</dd> <dt>HTML</dt> </dl>

Basic Description List Example

Following example demonstrates a simple description list with programming language terms

<!DOCTYPE html>
<html>
<head>
   <title>Basic Description List</title>
</head>
<body style="font-family: Arial, sans-serif; padding: 20px;">
   <h2>Programming Languages</h2>
   <dl>
      <dt>JavaScript</dt>
      <dd>A scripting language used for client-side and server-side development.</dd>
      
      <dt>Python</dt>
      <dd>A high-level programming language known for its simplicity and readability.</dd>
      
      <dt>HTML</dt>
      <dd>A markup language used to structure web page content.</dd>
   </dl>
</body>
</html>

The output displays terms in bold with their descriptions indented below

Programming Languages

JavaScript
    A scripting language used for client-side and server-side development.
Python
    A high-level programming language known for its simplicity and readability.
HTML
    A markup language used to structure web page content.

Multiple Terms with Single Description

A single description can apply to multiple terms by using multiple <dt> elements before one <dd> element

<!DOCTYPE html>
<html>
<head>
   <title>Multiple Terms Example</title>
</head>
<body style="font-family: Arial, sans-serif; padding: 20px;">
   <h2>Web Technologies</h2>
   <dl>
      <dt>HTML</dt>
      <dt>CSS</dt>
      <dt>JavaScript</dt>
      <dd>Core technologies used for front-end web development.</dd>
      
      <dt>Node.js</dt>
      <dd>A JavaScript runtime for server-side development.</dd>
   </dl>
</body>
</html>

The output shows three terms sharing one description

Web Technologies

HTML
CSS
JavaScript
    Core technologies used for front-end web development.
Node.js
    A JavaScript runtime for server-side development.

Single Term with Multiple Descriptions

One term can have multiple descriptions using multiple <dd> elements after a single <dt> element

<!DOCTYPE html>
<html>
<head>
   <title>Multiple Descriptions Example</title>
</head>
<body style="font-family: Arial, sans-serif; padding: 20px;">
   <h2>JavaScript Uses</h2>
   <dl>
      <dt>JavaScript</dt>
      <dd>Used for interactive web page behavior</dd>
      <dd>Server-side development with Node.js</dd>
      <dd>Mobile app development with React Native</dd>
      <dd>Desktop application development with Electron</dd>
   </dl>
</body>
</html>

The output displays one term with multiple descriptions

JavaScript Uses

JavaScript
    Used for interactive web page behavior
    Server-side development with Node.js
    Mobile app development with React Native
    Desktop application development with Electron

Styling Description Lists with CSS

Description lists can be styled using CSS to improve their appearance and readability

<!DOCTYPE html>
<html>
<head>
   <title>Styled Description List</title>
   <style>
      dl {
         background-color: #f8f9fa;
         padding: 20px;
         border-radius: 8px;
         border-left: 4px solid #007bff;
      }
      dt {
         font-weight: bold;
         color: #007bff;
         margin-top: 15px;
         font-size: 16px;
      }
      dt:first-child {
         margin-top: 0;
      }
      dd {
         margin-left: 20px;
         margin-bottom: 10px;
         color: #555;
         line-height: 1.5;
      }
   </style>
</head>
<body style="font-family: Arial, sans-serif; padding: 20px;">
   <h2>HTML Elements</h2>
   <dl>
      <dt>Semantic Elements</dt>
      <dd>HTML5 elements that provide meaning to the structure of web content.</dd>
      
      <dt>Block Elements</dt>
      <dd>Elements that take up the full width available and start on a new line.</dd>
      
      <dt>Inline Elements</dt>
      <dd>Elements that only take up the width of their content and don't break the line.</dd>
   </dl>
</body>
</html>

The styled description list appears with blue terms, gray descriptions, and a light background with blue left border.

Common Use Cases

Description lists are ideal for the following scenarios

  • Glossaries Technical terms and their definitions
  • FAQ sections Questions paired with answers
  • Metadata Properties and their values
  • Name-value pairs Configuration settings, contact information
  • Product specifications Features and descriptions

Conclusion

HTML description lists provide a semantic way to structure term-definition pairs using <dl>, <dt>, and <dd> tags. They support flexible relationships between terms and descriptions, making them perfect for glossaries, FAQs, and metadata displays. Proper styling with CSS can enhance their visual appeal and readability.

Updated on: 2026-03-16T21:38:54+05:30

522 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements