Skip to main content
Pricing

Data Table

Pro

A full-featured table for displaying structured data with sortable columns, row selection via checkboxes, pagination, and optional row actions. Supports striped rows, sticky headers, and responsive horizontal scrolling. The primary component for listing, comparing, and managing records.

8 variants

Name
Email
Plan
Alice
alice@acme.co
Pro
Bob
bob@acme.co
Free
Carol
carol@acme.co
Pro

Variants

VariantDescriptionWhen to use
DefaultStandard data table with sortable headers and pagination.Use for displaying tabular data with more than 5 rows — user lists, orders, records.
CompactDense table with reduced row height for data-heavy views.Use for technical data, logs, or admin views where density matters.
With Selection

Usage Guidelines

Do

Use proper <table>, <thead>, <tbody>, <th>, and <td> elements.

Don't

Use tables for layout — only for actual tabular data.

Do

Add scope="col" to column headers and scope="row" to row headers.

Don't

Hide important columns on mobile without providing an alternative view.

Do

Indicate sort direction with aria-sort="ascending" or "descending" on sorted <th>.

Don't

Omit pagination for large datasets — never render 1000+ rows.

Code

This component is included in Lexicon Pro

From €149 — one-time purchase, lifetime access

View pricing

Design Tokens

This component is included in Lexicon Pro

From €149 — one-time purchase, lifetime access

View pricing

Accessibility

  • Use native <table> elements with proper <thead>, <tbody>, <th>, and <td>.
  • Column headers must have scope="col"; row headers use scope="row".
  • Sorted columns use aria-sort="ascending", "descending", or "none".
  • Selectable rows use checkboxes with aria-label="Select [row identifier]".
  • Pagination controls should be labelled with aria-label="Table pagination".

Keyboard Interactions

TabMoves focus between interactive elements (sort buttons, checkboxes, pagination).
Enter/SpaceActivates the focused sort button or checkbox.
ArrowUp/ArrowDownNavigates between rows when using grid navigation pattern.