Kelluvat etiketit
Luo kauniin yksinkertaisia lomaketarroja, jotka kelluvat syöttökenttien päällä.
Esimerkki
Kääri pari <input class="form-control">
ja <label>
elementit .form-floating
mahdollistaaksesi kelluvat tarrat Bootstrapin tekstimuotoisilla kentillä. A placeholder
on pakollinen jokaisessa <input>
, koska vain CSS:n kelluvien tunnisteiden menetelmämme käyttää :placeholder-shown
pseudoelementtiä. Huomaa myös, että on <input>
oltava ensin, jotta voimme käyttää sisarusvalitsinta (esim. ~
).
<div class="form-floating mb-3">
<input type="email" class="form-control" id="floatingInput" placeholder="[email protected]">
<label for="floatingInput">Email address</label>
</div>
<div class="form-floating">
<input type="password" class="form-control" id="floatingPassword" placeholder="Password">
<label for="floatingPassword">Password</label>
</div>
Kun on value
jo määritetty, <label>
s mukautuu automaattisesti kelluvaan asentoonsa.
<form class="form-floating">
<input type="email" class="form-control" id="floatingInputValue" placeholder="[email protected]" value="[email protected]">
<label for="floatingInputValue">Input with value</label>
</form>
Lomakkeiden vahvistustyylit toimivat myös odotetulla tavalla.
<form class="form-floating">
<input type="email" class="form-control is-invalid" id="floatingInputInvalid" placeholder="[email protected]" value="[email protected]">
<label for="floatingInputInvalid">Invalid input</label>
</form>
Tekstialueet
Oletusarvoisesti <textarea>
s with .form-control
on sama korkeus kuin <input>
s.
<div class="form-floating">
<textarea class="form-control" placeholder="Leave a comment here" id="floatingTextarea"></textarea>
<label for="floatingTextarea">Comments</label>
</div>
<textarea>
Älä käytä määritettä asettaaksesi mukautetun korkeuden rows
. Aseta sen sijaan eksplisiittinen height
(joko tekstin sisällä tai mukautetun CSS:n kautta).
<div class="form-floating">
<textarea class="form-control" placeholder="Leave a comment here" id="floatingTextarea2" style="height: 100px"></textarea>
<label for="floatingTextarea2">Comments</label>
</div>
Valitsee
Muut kuin .form-control
kelluvat tarrat ovat saatavilla vain .form-select
s. Ne toimivat samalla tavalla, mutta toisin kuin <input>
s, ne näyttävät aina <label>
kelluvassa tilassa. Valintoja, joissa on size
ja multiple
, ei tueta.
<div class="form-floating">
<select class="form-select" id="floatingSelect" aria-label="Floating label select example">
<option selected>Open this select menu</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<label for="floatingSelect">Works with selects</label>
</div>
Vain luku -selkoteksti
Kelluvat tunnisteet tukevat myös .form-control-plaintext
, mikä voi olla hyödyllistä vaihdettaessa muokattavasta <input>
arvosta pelkkätekstiarvoon vaikuttamatta sivun asetteluun.
<div class="form-floating mb-3">
<input type="email" readonly class="form-control-plaintext" id="floatingEmptyPlaintextInput" placeholder="[email protected]">
<label for="floatingEmptyPlaintextInput">Empty input</label>
</div>
<div class="form-floating mb-3">
<input type="email" readonly class="form-control-plaintext" id="floatingPlaintextInput" placeholder="[email protected]" value="[email protected]">
<label for="floatingPlaintextInput">Input with value</label>
</div>
Syöteryhmät
Kelluvat tarrat tukevat myös .input-group
.
<div class="input-group mb-3">
<span class="input-group-text">@</span>
<div class="form-floating">
<input type="text" class="form-control" id="floatingInputGroup1" placeholder="Username">
<label for="floatingInputGroup1">Username</label>
</div>
</div>
Käytettäessä .input-group
ja .form-floating
yhdessä lomakkeen vahvistuksen kanssa, -feedback
tulee sijoittaa tunnuksen ulkopuolelle .form-floating
, mutta sen sisäpuolelle .input-group
. Tämä tarkoittaa, että palaute on näytettävä JavaScriptillä.
<div class="input-group has-validation">
<span class="input-group-text">@</span>
<div class="form-floating is-invalid">
<input type="text" class="form-control is-invalid" id="floatingInputGroup2" placeholder="Username" required>
<label for="floatingInputGroup2">Username</label>
</div>
<div class="invalid-feedback">
Please choose a username.
</div>
</div>
Layout
Kun työskentelet Bootstrap-ruudukkojärjestelmän kanssa, muista sijoittaa lomakeelementit sarakeluokkiin.
<div class="row g-2">
<div class="col-md">
<div class="form-floating">
<input type="email" class="form-control" id="floatingInputGrid" placeholder="[email protected]" value="[email protected]">
<label for="floatingInputGrid">Email address</label>
</div>
</div>
<div class="col-md">
<div class="form-floating">
<select class="form-select" id="floatingSelectGrid">
<option selected>Open this select menu</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<label for="floatingSelectGrid">Works with selects</label>
</div>
</div>
</div>
Sass
Muuttujat
$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-opacity: .65;
$form-floating-label-transform: scale(.85) translateY(-.5rem) translateX(.15rem);
$form-floating-transition: opacity .1s ease-in-out, transform .1s ease-in-out;