Skip to content

Data display

IDescriptionList ​

Term and value pairs — a details panel, an order summary, a record's metadata.

Invoice
INV-2048
Issued
12 August 2026
Due
11 September 2026
Amount
€4,280.00

Orientation ​

vertical stacks the description under its term. horizontal puts them side by side, with the terms sharing one column — the columns are a subgrid, so every value lines up however long the terms run.

Plan
Team
Seats
12
Renews
1 October 2026
Plan
Team
Seats
12
Renews
1 October 2026

Divided ​

divided rules the rows apart instead of spacing them, for a long list where the eye needs the row boundary.

Status
Paid
Method
Bank transfer
Reference
SI56 1910 0000 0123 438
Settled
14 August 2026

Slots ​

The term and description slots take over the rendering of every row, each receiving the item and its index.

Status
Paid
Owner
Dana Whitfield
Reference
INV-2048

The default slot renders after the items, for a row that does not fit the items shape at all. Write it as <div><dt>…</dt><dd>…</dd></div> so it keeps the row layout.

Props ​

PropTypeDefaultDescription
itemsDescriptionListItem[][]The pairs, each { term, description?, key? }
orientation'vertical' | 'horizontal''vertical'Stacked, or term and value side by side
dividedbooleanfalseRule between rows instead of spacing
unstyledboolean—Drop built-in classes
classstring—Merged with the built-in classes
ui{ root?, item?, term?, description? }—Per-element class overrides

key is only an identity — it names the row for the slots and keys the render. Rows fall back to their term when it is absent, so give a key when two rows share a term.

Slots ​

SlotWhen to use it
termThe label needs markup, receiving { item, index }
descriptionThe value needs markup — a badge, a link, a chip — receiving { item, index }
defaultAn extra row that does not fit the items shape