Textarea

Multi-line input that field-sizes with its content. Borderless fill deepens on hover and focus — no reflow, no jump — and aria-invalid flips the focus ring to destructive in one beat.

Usage

States

With Label

Pair a Label with a Textarea for accessible multi-line fields.

With Text

Helper text below the Textarea provides context without occupying a Field slot.

Your message will be copied to the support team.

With Button

Send-message pattern — Textarea stacked above a full-width submit Button.

API reference

Inherits every native HTMLTextAreaElement attribute via spread. Uses field-sizing: content so height tracks the value without a manual rows prop.

PropTypeDescription
string | number | string[] | undefined (bindable)Two-way bindable value.
booleanDisables the control and drops opacity to 50%.
stringGhost text rendered before the user types.
'true' | 'false'Flips the focus ring to destructive without changing layout. Pair with aria-describedby pointing at the error.
HTMLTextAreaElement | nullTwo-way-bindable element reference.
stringMerged onto the root via tailwind-merge.