Input

Single-size text field — borderless, defined by a quiet fill that deepens on hover and focus. The neutral focus ring sits on top without shifting layout; aria-invalid flips that ring to destructive in one beat.

Usage

States

Types

File

File picker using the native input type.

With Label

Pair a Label with an Input for accessible form fields.

With Button

Side-by-side Input + Button for subscribe or search patterns.

API reference

Inherits every native HTMLInputElement attribute via spread. File inputs also bind the files FileList.

PropTypeDescription
HTMLInputTypeAttributeAny native input type. File uses a tailored set of file-styling selectors; everything else shares the same rounded pill.
string | number | string[] | undefined (bindable)Two-way bindable value.
FileList | undefined (bindable)Bindable FileList, only meaningful when type="file".
booleanDisables input and drops the opacity to 50%.
'true' | 'false'Flips the focus ring to destructive without changing layout. Pair with aria-describedby pointing at the error.
HTMLInputElement | nullTwo-way-bindable element reference.
stringMerged onto the root via tailwind-merge.