Skip to main content
Elastic UI
Elastic UI
ComponentsPatternsContentData visualization
EUI ChangelogGitHubFigma
  • Guidelines
    • Getting started
    • Accessibility
    • Writing
    • Testing
  • Theming
    • Theme provider
    • Color mode
    • High contrast mode
    • Borders
    • Breakpoints
    • Colors
    • Sizing
    • Typography
  • Templates
    • Page template
    • Sitewide search
  • Layout
    • Accordion
    • Bottom bar
    • Flex
    • Flyout
    • Header
    • Horizontal rule
    • Modal
    • Page components
    • Page header
    • Panel
    • Popover
    • Resizable container
    • Spacer
  • Navigation
    • Breadcrumbs
    • Buttons
    • Collapsible nav
    • Context menu
    • Facet
    • Key pad menu
    • Link
    • Pagination
    • Side nav
    • Steps
    • Tabs
    • Tree view
  • Display
    • Aspect ratio
    • Avatar
    • Badge
    • Callout
    • Card
    • Comment list
    • Description list
    • Drag and drop
    • Empty prompt
    • Health
    • Icons
    • Image
    • List group
    • Loading
    • Progress
    • Skeleton
    • Stat
    • Text
    • Timeline
    • Title
    • Toast
    • Tooltip
    • Tour
  • Forms
    • Form controls
    • Form layouts
    • Form validation
    • Text controls
    • Numeric controls
    • Selection controls
    • Search and filter controls
    • Date and time controls
    • Other controls
  • Tabular content
    • Tables
    • Data grid
  • Editors & Syntax
    • Code
    • Markdown
  • Utilities
    • Accessibility
    • Auto sizer
    • Beacon
    • Color palettes
    • Copy
    • CSS utility classes
    • Delay
    • Error boundary
    • Focus trap
    • Highlight and mark
    • HTML ID generator
    • I18n
    • Inner text
    • Mutation observer
    • Outside click detector
    • Overlay mask
    • Portal
    • Pretty duration
    • Provider
    • Resize observer
    • Scroll
    • Text diff
    • Text truncation
    • Window events
  • EUI
  • Display
  • Description list

Description list

EuiDescriptionList is a component for listing pairs of information together. You can use the component on its own, passing in an object for the list.

Loading...

You can also use the EuiDescriptionListTitle and EuiDescriptionListDescription components separately to build a list manually.

Loading...

Reverse style

Setting the

textStyle prop to reverse will reverse the text styles of the title and description elements so that the description is more prominent. This works best for key/value type content.

Adding this property to the inline type will not change anything.

Loading...

As columns

Using the prop type set to column description lists can be presented in an inline, column format.

Loading...

To return to the typical row format on smaller screens set type to responsiveColumn. The following list will only show the column format on larger screens.

Loading...

The optional columnWidths prop allows customizing specific column widths (e.g. ['100px', '200px']). The first array value applies to the title column, and the second applies to the description column.

Passing numbers instead of CSS width strings will use a ratio of widths. For example, [1, 3] will render a description column 3x the width of the title column. In other words, titles will have a width of 25% descriptions will have a width of 75%.

For advanced usage, column width strings also accept

CSS grid special units, sizing, keywords, and sizing functions.

Loading...

Inline

Using a prop type set to inline description lists can be presented in an inline, blob format. This is useful for JSON code blocks. Inline description lists are sized smaller than normal lists due to their compact nature.

Loading...

Customizing appearance

Alignment & Compression

Utilize the align andcompressed props to refine the presentation of your description list. These are compatible with both column and inline types.

Vertical spacing

Modify the rowGutterSize prop to control the vertical spacing between EuiDescriptionList elements. This will not affect inline list types.

Horizontal spacing

Adjust the spacing between the title and description with the columnGutterSize prop. This will not affect inline or row types.

Loading...

Passing className

When using the listItems prop to pass an object of items and you need to also add a className (or other available prop) to the individual pieces, you can use the titleProps and descriptionProps to do so.

Loading...

Props

EuiDescriptionList

Extends HTMLAttributes
𐘂𐘂
✄𐘗✄𐘗
Prop
↦
Description and type
↦
Default value
↵
Prop
className#
↦
Description and type
Type: string
↦
Default value
↵
Prop
aria-label#
↦
Description and type

Defines a string value that labels the current element.
@see aria-labelledby.

Type: string
↦
Default value
↵
Prop
data-test-subj#
↦
Description and type
Type: string
↦
Default value
↵
Prop
css#
↦
Description and type
Type: Interpolation<Theme>
↦
Default value
↵
Prop
listItems#
↦
Description and type
Type: { title: NonNullable<ReactNode>; description: NonNullable<ReactNode>; }[]
↦
Default value
↵
Prop
align#
↦
Description and type

Text alignment

Type: "center" | "left"
↦
Default value
left
↵
Prop
compressed#
↦
Description and type

Smaller text and condensed spacing

Type: boolean
↦
Default value
false
↵
Prop
textStyle#
↦
Description and type

How should the content be styled, by default
this will emphasize the title

Type: "normal" | "reverse"
↦
Default value
normal
↵
Prop
type#
↦
Description and type

How each item should be laid out

Type: "inline" | "column" | "row" | "responsiveColumn"
↦
Default value
↵
Prop
titleProps#
↦
Description and type

Props object to be passed to EuiDescriptionListTitle

Type: HTMLAttributes<HTMLElement> & CommonProps
↦
Default value
↵
Prop
descriptionProps#
↦
Description and type

Props object to be passed to EuiDescriptionListDescription

Type: HTMLAttributes<HTMLElement> & CommonProps
↦
Default value
↵
Prop
rowGutterSize#
↦
Description and type

Allows customizing the vertical spacing between rows.

Type: "s" | "m"
↦
Default value
s
↵
Prop
columnGutterSize#
↦
Description and type

Allows customizing the horizontal spacing between columns.

Only applies to column and responsiveColumn types.

Type: "s" | "m"
↦
Default value
s
↵
Prop
columnWidths#
↦
Description and type

Allows customizing specific column widths (e.g. ['100px', '200px']). The first
array value applies to the title column, and the second applies to the description column.

Passing numbers instead of CSS width strings will use a ratio of widths.
For example, [1, 3] will render a description column 3x the width of the title column.
In other words, descriptions will have a width of 75% and titles will have a width of 25%.

Only applies to column and responsiveColumn types.

Advanced usage note: column width strings also accept CSS grid special units,
sizing, keywords, and sizing functions
.

Type: [string | number, string | number]
↦
Default value
↵
𐘂𐘂

EuiDescriptionListTitle

Extends HTMLAttributes
𐘂𐘂
✄𐘗✄𐘗
Prop
↦
Description and type
↦
Default value
↵
Prop
className#
↦
Description and type
Type: string
↦
Default value
↵
Prop
aria-label#
↦
Description and type
Type: string
↦
Default value
↵
Prop
data-test-subj#
↦
Description and type
Type: string
↦
Default value
↵
Prop
css#
↦
Description and type
Type: Interpolation<Theme>
↦
Default value
↵
𐘂𐘂

EuiDescriptionListDescription

Extends HTMLAttributes
𐘂𐘂
✄𐘗✄𐘗
Prop
↦
Description and type
↦
Default value
↵
Prop
className#
↦
Description and type
Type: string
↦
Default value
↵
Prop
aria-label#
↦
Description and type
Type: string
↦
Default value
↵
Prop
data-test-subj#
↦
Description and type
Type: string
↦
Default value
↵
Prop
css#
↦
Description and type
Type: Interpolation<Theme>
↦
Default value
↵
𐘂𐘂
Edit this page

Previous
Comment list
Next
Drag and drop
  • Reverse style
  • As columns
  • Inline
  • Customizing appearance
  • Passing className
  • Props
EUI is dual-licensed under Elastic License 2.0 and Server Side Public License, v 1 | Crafted with ❤ by Elastic