Skip to content

Tabs

Tab navigation; the child at index i is the panel of tab i.

Group: Navigation · Kind: native · in the lite catalog

example
The issue panel.

Open in the playground

The same specimen painted by React, SwiftUI, Compose and gpui.

exponential-ui-tabs on Web
exponential-ui-tabs on iOS
exponential-ui-tabs on Android
exponential-ui-tabs on Desktop
fill
The issue panel.
closable · none
The issue panel.
closable · hover
The issue panel.
closable · always
The issue panel.
addable
The issue panel.
Prop Type Required Bindable Description
tabs [tab] yes – The tab headers in order.
value string – yes The active tab’s value; bind it for two-way state.
fill boolean – – Stretches the headers across the width. Default false.
closable none | hover | always – – Close glyphs firing close; hover = on hover. Default "none".
addable boolean – – A + button firing new. Default false.
  • on.change: runs an action
  • on.close: runs an action
  • on.new: runs an action

None.

many

The basic catalog’s Tabs renders as Tabs.

A native component: every renderer paints it directly.

Role: tablist

tablist / tab / tabpanel

Keys Action
– Roving tab stop on the tabs
ArrowLeft ArrowRight previous/next tab, activating it (wraps)
Home End first/last tab
Tab into the active panel
– Each close glyph (labelled closeTab, revealed by keyboard focus too) is a button after its tab; the + button (labelled newTab) follows the last tab

Recipe parts: Tabs/root Tabs/list Tabs/tab Tabs/indicator Tabs/content Tabs/close Tabs/new

Keyed by: fill closable addable :hover :pressed :focus :disabled :checked :open :selected :invalid :dragover

Themes · Write a theme

Segmented · Accordion · Collapsible · Pagination · Breadcrumb · Outline · Stepper