Movatterモバイル変換


[0]ホーム

URL:


Framework:


Hire Us Get CoreUI PRO all-access

Bootstrap 5 Floating Labels

Floating labels

Create beautifully simple form labels that float over your input fields.

🤖 Looking for the LLM-optimized version?View llm.md

Other frameworks

CoreUI components are available as native Angular, React, and Vue components. To learn more please visit the following pages.

On this page

Example

Wrap a pair of<input class="form-control"> and<label> elements in.form-floating to enable floating labels with CoreUI for Bootstrap’s textual form fields. Aplaceholder is required on each<input> as our method of CSS-only floating labels uses the:placeholder-shown pseudo-element. Also note that the<input> must come first so we can utilize a sibling selector (e.g.,~).

html
<divclass="form-floating mb-3"><inputtype="email"class="form-control"id="floatingInput"placeholder="[email protected]"><labelfor="floatingInput">Email address</label></div><divclass="form-floating"><inputtype="password"class="form-control"id="floatingPassword"placeholder="Password"><labelfor="floatingPassword">Password</label></div>

When there’s avalue already defined,<label>s will automatically adjust to their floated position.

html
<formclass="form-floating"><inputtype="email"class="form-control"id="floatingInputValue"placeholder="[email protected]"value="[email protected]"><labelfor="floatingInputValue">Input with value</label></form>

Form validation styles also work as expected.

html
<formclass="form-floating"><inputtype="email"class="form-control is-invalid"id="floatingInputInvalid"placeholder="[email protected]"value="[email protected]"><labelfor="floatingInputInvalid">Invalid input</label></form>

Textareas

By default,<textarea>s with.form-control will be the same height as<input>s.

html
<divclass="form-floating"><textareaclass="form-control"placeholder="Leave a comment here"id="floatingTextarea"></textarea><labelfor="floatingTextarea">Comments</label></div>

To set a custom height on your<textarea>, do not use therows attribute. Instead, set an explicitheight (either inline or via custom CSS).

html
<divclass="form-floating"><textareaclass="form-control"placeholder="Leave a comment here"id="floatingTextarea2"style="height: 100px"></textarea><labelfor="floatingTextarea2">Comments</label></div>

Selects

Other than.form-control, floating labels are only available on.form-selects. They work in the same way, but unlike<input>s, they’ll always show the<label> in its floated state.Selects withsize andmultiple are not supported.

html
<divclass="form-floating"><selectclass="form-select"id="floatingSelect"aria-label="Floating label select example"><optionselected>Open this select menu</option><optionvalue="1">One</option><optionvalue="2">Two</option><optionvalue="3">Three</option></select><labelfor="floatingSelect">Works with selects</label></div>

Disabled

Add thedisabled boolean attribute on an input, a textarea or a select to give it a grayed out appearance, remove pointer events, and prevent focusing.

html
<divclass="form-floating mb-3"><inputtype="email"class="form-control"id="floatingInputDisabled"placeholder="[email protected]"disabled><labelfor="floatingInputDisabled">Email address</label></div><divclass="form-floating mb-3"><textareaclass="form-control"placeholder="Leave a comment here"id="floatingTextareaDisabled"disabled></textarea><labelfor="floatingTextareaDisabled">Comments</label></div><divclass="form-floating mb-3"><textareaclass="form-control"placeholder="Leave a comment here"id="floatingTextarea2Disabled"style="height: 100px"disabled>Disabled textarea with some text inside</textarea><labelfor="floatingTextarea2Disabled">Comments</label></div><divclass="form-floating"><selectclass="form-select"id="floatingSelectDisabled"aria-label="Floating label disabled select example"disabled><optionselected>Open this select menu</option><optionvalue="1">One</option><optionvalue="2">Two</option><optionvalue="3">Three</option></select><labelfor="floatingSelectDisabled">Works with selects</label></div>

Readonly plaintext

Floating labels also support.form-control-plaintext, which can be helpful for toggling from an editable<input> to a plaintext value without affecting the page layout.

html
<divclass="form-floating mb-3"><inputtype="email"readonlyclass="form-control-plaintext"id="floatingEmptyPlaintextInput"placeholder="[email protected]"><labelfor="floatingEmptyPlaintextInput">Empty input</label></div><divclass="form-floating mb-3"><inputtype="email"readonlyclass="form-control-plaintext"id="floatingPlaintextInput"placeholder="[email protected]"value="[email protected]"><labelfor="floatingPlaintextInput">Input with value</label></div>

Layout

When working with the CoreUI for Bootstrap grid system, be sure to place form elements within column classes.

html
<divclass="row g-2"><divclass="col-md"><divclass="form-floating"><inputtype="email"class="form-control"id="floatingInputGrid"placeholder="[email protected]"value="[email protected]"><labelfor="floatingInputGrid">Email address</label></div></div><divclass="col-md"><divclass="form-floating"><selectclass="form-select"id="floatingSelectGrid"><optionselected>Open this select menu</option><optionvalue="1">One</option><optionvalue="2">Two</option><optionvalue="3">Three</option></select><labelfor="floatingSelectGrid">Works with selects</label></div></div></div>

Customizing

SASS variables

scss/_variables.scss
$form-floating-height:add(3.5rem,$input-height-border);$form-floating-line-height:1.25;$form-floating-padding-x:$input-padding-x;$form-floating-padding-y:1rem;$form-floating-input-padding-t:1.625rem;$form-floating-input-padding-b:.625rem;$form-floating-label-height:1.5em;$form-floating-label-opacity:.65;$form-floating-label-transform:scale(.85)translateY(-.5rem)translateX(.15rem);$form-floating-label-disabled-color:$gray-600;$form-floating-transition:opacity.1sease-in-out,transform.1sease-in-out;

[8]ページ先頭

©2009-2025 Movatter.jp