Text Area

PreviousNext

Multi-line text input with auto-resizing, accessible form integration, and validation states

Multi-line text input with auto-resizing and validation state styling.

Basic Usage

The simplest usage with default styling and auto-resizing based on content.

With Label

Combine with a label element for accessible form inputs.

With Helper Text

Include helper text to provide additional context or instructions.

Brief description for your profile. Maximum 500 characters.

Disabled State

Show a non-interactive state for disabled textareas.

Invalid State

Use the aria-invalid attribute to indicate validation errors.

Feedback must be at least 10 characters long.

Readonly State

Display content that can be selected but not modified.

Custom Sizing

Control the width and minimum height with utility classes.

Form Example

Complete form with textarea, showing validation and submission flow.

Please provide as much detail as possible.

With Character Count

Track and display character count for textarea inputs.

Share your thoughts in 280 characters or less

0 / 280

Props

The Text Area component accepts all standard HTML textarea attributes, plus:

PropTypeDefaultDescription
classNamestring-Additional CSS classes merged with default styles
disabledbooleanfalseDisables the textarea
readOnlybooleanfalseMakes the textarea read-only
placeholderstring-Placeholder text when empty
aria-invalid"true" | "false"-Indicates validation state for accessibility
rowsnumber-Initial number of visible text lines
maxLengthnumber-Maximum number of characters allowed
valuestring-Controlled value (requires onChange)
defaultValuestring-Initial value for uncontrolled usage

All standard textarea props are supported including onChange, onBlur, onFocus, name, id, etc.