Form Input

Basic form
We'll never share your email with anyone else.
Form controls

Textual form controls—like <input>s, <select>s, and <textarea>s—are styled with the .form-control class. Included are styles for general appearance, focus state, sizing, and more.

Sizing

Set heights using classes like .form-control-lg and .form-control-sm.

Readonly
Readonly plain text
Form groups
Form groups
Form row
Horizontal form
Radios
Checkbox
Horizontal form label sizing
Horizontal form label sizing
Horizontal form label sizing
@

And of course custom form controls are supported.

Horizontal form label sizing
@

Custom form controls and selects are also supported.

Help text
Your password must be 8-20 characters long, contain letters and numbers, and must not contain spaces, special characters, or emoji.

Inline text can use any typical inline HTML element (be it a <small>, <span>, or something else) with nothing more than a utility class.

Must be 8-20 characters long.
Disabled forms
Custom styles
Looks good!
Looks good!
@
Please choose a username.
Please provide a valid city.
Please provide a valid state.
Please provide a valid zip.
You must agree before submitting.
Browser defaults
@
Server side
Looks good!
Looks good!
@
Please choose a username.
Please provide a valid city.
Please provide a valid state.
Please provide a valid zip.
You must agree before submitting.
Supported elements
Example invalid feedback text
Example invalid feedback text
More example invalid feedback text
Example invalid custom select feedback
Example invalid custom file feedback
Tooltips
Looks good!
Looks good!
@
Please choose a unique and valid username.
Please provide a valid city.
Please provide a valid state.
Please provide a valid zip.
Checkboxes
Radios
Inline
Disabled
Select menu

You may also choose from small and large custom selects to match our similarly sized text inputs.

The multiple attribute is also supported:

As is the size attribute:

File browser

Here’s lang(es) in action on the custom file input for a Spanish translation: