Create beautifully simple form labels that float over your input fields.
Wrap a pair of FormFloating
elements in .form-floating
to enable floating labels with Bootstrap's textual form fields.
A placeholder
is required on each FormInput
as our method of CSS-only floating labels uses the :placeholder-shown
pseudo-element.
Also note that the FormInput
must come first so we can utilize a sibling selector (e.g., ~
.
When there's a value
already defined, FormLabel
s will automatically adjust to their floated position.
Form validation styles also work as expected.
By default, FormTextarea
s will be the same height as FormInput
s.
To set a custom height on your FormTextarea
, do not use the rows
attribute.
Instead, set an explicit height
(either inline or via custom CSS).
Other than FormControl
, floating labels are only available on FormSelect
s.
They work in the same way, but unlike FormInput
s, they'll always show the FormLabel
in its floated state.
Selects with size
and multiple
are not supported.
When working with the Bootstrap grid system, be sure to place form elements within column classes.