A: < dl> elements must only directly contain properly-ordered < dt> and < dd> groups, < script>, < template> or < div> elements (WCAG 1.3.1)
definition-list
Ensure that <dl> elements are properly structured.
This means
Within a <dl>, only groups consisting of one or more <dt> followed by one or more <dd> are allowed – as well as optionally <script> or <template>. Other elements such as <div>, <p>, <ul> are not permitted here.
Impact
Screen readers cannot reliably associate terms and their descriptions. Users lose orientation; the semantic structure is faulty and violates WCAG.
Recommendation
-
For each term description: <dt>…</dt> and the corresponding <dd>…</dd> directly inside the <dl>.
-
Do not use foreign containers directly inside <dl>. If layout is necessary, apply classes to <dt> and <dd>.
-
Multiple terms can share one description and vice versa, but always group in the order dt → dd.
-
Maintain native HTML semantics; avoid unnecessary ARIA roles.
Example
Problematic
<dl>
<div class="row">
<dt>Shipping</dt>
<dd>3–5 business days</dd>
</div>
<p><dt>Withdrawal</dt><dd>14 days</dd></p>
</dl>
Better
<dl>
<dt>Shipping</dt>
<dd>3–5 business days</dd>
<dt>Withdrawal</dt>
<dd>14 days</dd>
<dt>Payment</dt>
<dt>Invoice</dt>
<dd>Due in 14 days</dd>
</dl>
Variants with multiple associations
Multiple <dt> for one <dd> or multiple <dd> for one <dt> are allowed, as long as the order dt(s) → dd(s) is maintained.
Related WCAG criterion:
WCAG 1.3.1 - Info and Relationships