- Home
- Primitives
- Listbox
Listbox
Single or multi-select list of options.
Preview
This preview uses documentation-only styling. Ship with one of the included recipe outputs (CSS, Tailwind, or UnoCSS) for production styles.
Single or multi-select list of options.
Usage
Compose Root, Item.
import * as Listbox from "@solidiom/listbox"
;<Listbox.Root>Listbox content</Listbox.Root>Installation
Install the package with pnpm add @solidiom/listbox. The package requires compatible solid-js and @solidjs/web peer dependencies.
Parts
Listbox exposes 2 parts:
- Root —
data-part="root". - Item —
data-part="item".
Styling
Listbox carries data-scope="listbox" and data-part attributes on each part for CSS/recipe targeting. State attributes like data-state, data-disabled, and data-highlighted are exposed where applicable.
Keyboard & behavior
This primitive has no keyboard interaction. It renders content that does not independently receive focus or respond to key events.
SSR and hydration
Listbox renders as semantic HTML during server rendering. Interactive behavior (keyboard handlers, state management) activates on hydration without layout shift.