Kpekpeɖeŋugbalẽviwo
Kpɔɖeŋuwo kple zazã ŋuti mɔfiamewo na agbalẽvi dzi kpɔkpɔ ƒe atsyãwo, ɖoɖo ƒe tiatia, kple akpa siwo wowɔ ɖe ɖoɖo nu hena agbalẽvi vovovowo wɔwɔ.
Bootstrap ƒe agbalẽvi dzi kpɔkpɔwo kekea míaƒe Rebooted agbalẽvi ƒe atsyãwo ɖe enu kple klasswo. Zã klass siawo nàtsɔ atia woƒe ɖeɖefia siwo wowɔ ɖe ɖoɖo nu la me hena gɔmeɖeɖe si mewɔa tɔtrɔ o wu le web-browserwo kple mɔ̃wo dzi.
Kpɔ egbɔ be yezã type
nɔnɔme si sɔ ɖe nyawo katã dzi (le kpɔɖeŋu me, email
na e-mail adrɛs alo number
na xexlẽdzesiwo ŋuti nyatakakawo) be nàwɔ nyawo tsɔtsɔ de eme ƒe dziɖuɖu yeyewo abe e-mail ƒe kpeɖodzi, xexlẽdzesi tiatia, kple bubuwo ŋudɔ.
Kpɔɖeŋu kaba aɖe si nàtsɔ aɖe Bootstrap ƒe nɔnɔme ƒe atsyãwo afiae nye esi. Yi edzi nànɔ nu xlẽm hena nuŋlɔɖi siwo ku ɖe klass siwo wobia tso ame si, agbalẽviawo ƒe ɖoɖo, kple bubuwo ŋu.
<form>
<div class="form-group">
<label for="exampleInputEmail1">Email address</label>
<input type="email" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp" placeholder="Enter email">
<small id="emailHelp" class="form-text text-muted">We'll never share your email with anyone else.</small>
</div>
<div class="form-group">
<label for="exampleInputPassword1">Password</label>
<input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password">
</div>
<div class="form-check">
<input type="checkbox" class="form-check-input" id="exampleCheck1">
<label class="form-check-label" for="exampleCheck1">Check me out</label>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
Wowɔa nuŋɔŋlɔ ƒe nɔnɔme dziɖunuwo—abe <input>
s, <select>
s, kple <textarea>
s ene—la kple .form-control
klass la. Atsyã siwo woatsɔ akpɔ dzedzeme bliboa, woƒe susu ƒe nɔnɔme, woƒe lolome, kple bubuwo hã le eme.
Kpɔ egbɔ be yeku míaƒe agbalẽvi siwo wowɔ ɖe ɖoɖo nu la me be nàgayi atsyã <select>
s ɖe edzi.
<form>
<div class="form-group">
<label for="exampleFormControlInput1">Email address</label>
<input type="email" class="form-control" id="exampleFormControlInput1" placeholder="[email protected]">
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Example select</label>
<select class="form-control" id="exampleFormControlSelect1">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect2">Example multiple select</label>
<select multiple class="form-control" id="exampleFormControlSelect2">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
</div>
<div class="form-group">
<label for="exampleFormControlTextarea1">Example textarea</label>
<textarea class="form-control" id="exampleFormControlTextarea1" rows="3"></textarea>
</div>
</form>
Ne èdi faɛl ƒe nyawo tsɔtsɔ de eme la, trɔ asi le .form-control
na .form-control-file
.
<form>
<div class="form-group">
<label for="exampleFormControlFile1">Example file input</label>
<input type="file" class="form-control-file" id="exampleFormControlFile1">
</div>
</form>
Ðo kɔkɔƒewo to klasswo abe .form-control-lg
kple .form-control-sm
.
<input class="form-control form-control-lg" type="text" placeholder=".form-control-lg">
<input class="form-control" type="text" placeholder="Default input">
<input class="form-control form-control-sm" type="text" placeholder=".form-control-sm">
<select class="form-control form-control-lg">
<option>Large select</option>
</select>
<select class="form-control">
<option>Default select</option>
</select>
<select class="form-control form-control-sm">
<option>Small select</option>
</select>
Tsɔ readonly
boolean nɔnɔme kpe ɖe nyawo tsɔtsɔ de eme ŋu be nàxe mɔ ɖe nyawo tsɔtsɔ de eme ƒe asixɔxɔ ƒe tɔtrɔ nu. Nuxexlẽ ɖeɖeko ƒe nyawo dzena le bɔbɔe wu (abe nyawo tsɔtsɔ de nuwɔametɔwoe ene), gake lé fli si wozãna ɖaa la ɖe asi.
<input class="form-control" type="text" placeholder="Readonly input here…" readonly>
Ne èdi be woawɔ <input readonly>
nusiwo le wò nuŋlɔɖigbalẽvia me ƒe atsyã abe nuŋɔŋlɔ gbadzaa ene la, zã .form-control-plaintext
klass la nàtsɔ aɖe nɔnɔmetata ƒe akpa ƒe nɔnɔme si woɖo ɖi la ɖa eye nàkpɔ axadzinuŋɔŋlɔ kple padding si sɔ la ta.
<form>
<div class="form-group row">
<label for="staticEmail" class="col-sm-2 col-form-label">Email</label>
<div class="col-sm-10">
<input type="text" readonly class="form-control-plaintext" id="staticEmail" value="[email protected]">
</div>
</div>
<div class="form-group row">
<label for="inputPassword" class="col-sm-2 col-form-label">Password</label>
<div class="col-sm-10">
<input type="password" class="form-control" id="inputPassword" placeholder="Password">
</div>
</div>
</form>
<form class="form-inline">
<div class="form-group mb-2">
<label for="staticEmail2" class="sr-only">Email</label>
<input type="text" readonly class="form-control-plaintext" id="staticEmail2" value="[email protected]">
</div>
<div class="form-group mx-sm-3 mb-2">
<label for="inputPassword2" class="sr-only">Password</label>
<input type="password" class="form-control" id="inputPassword2" placeholder="Password">
</div>
<button type="submit" class="btn btn-primary mb-2">Confirm identity</button>
</form>
Wowɔa dzesideɖaka kple radio siwo woɖo ɖi la wònyona ɖe edzi to kpekpeɖeŋu nana .form-check
, klass ɖeka na nyawo tsɔtsɔ de eme ƒomevi eveawo siaa si naa woƒe HTML akpawo ƒe ɖoɖo kple nuwɔna nyona ɖe edzi . Aɖakawo nye tiatia ɖeka alo geɖe tiatia le xexlẽdzesi aɖe me, gake radiowo ya nye tiatia ɖeka tso geɖe me.
Wodoa alɔ dzesiɖaka kple radio siwo wowɔ nuwɔametɔwoe, gake be nàna not-allowed
dzesi le dzila ƒe hover dzi la <label>
, ahiã be nàtsɔ disabled
nɔnɔmea akpe ɖe .form-check-input
. Nɔnɔme si wowɔ nuwɔametɔe la awɔ amadede si me kɔ wu ŋudɔ be wòakpe ɖe eŋu wòafia nusi wotsɔ de eme ƒe nɔnɔme.
Wotu dzesideɖakawo kple radiowo zazã be woado alɔ agbalẽvi ƒe kpeɖodzinana si wotu ɖe HTML dzi eye woana dzeside siwo le kpuie, siwo ŋu woate ŋu aɖo. Esi wòle alea ta la, míaƒe <input>
s kple <label>
s nye nɔviwo ƒe akpa siwo to vovo na an <input>
within a <label>
. Esia nye nyagbɔgblɔ geɖe wu vie abe alesi wòle be nàgblɔ id
kple for
nɔnɔmewo be nàtsɔ asɔ <input>
kple kple <label>
.
Le gɔmedzedzea me la, woaɖo dzesiɖaka kple radio xexlẽme ɖesiaɖe si nye nɔvi kplikplikpli la ɖe wo nɔewo dzi le tsitrenu eye woatsɔ .form-check
.
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="defaultCheck1">
<label class="form-check-label" for="defaultCheck1">
Default checkbox
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="defaultCheck2" disabled>
<label class="form-check-label" for="defaultCheck2">
Disabled checkbox
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="exampleRadios" id="exampleRadios1" value="option1" checked>
<label class="form-check-label" for="exampleRadios1">
Default radio
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="exampleRadios" id="exampleRadios2" value="option2">
<label class="form-check-label" for="exampleRadios2">
Second default radio
</label>
</div>
<div class="form-check disabled">
<input class="form-check-input" type="radio" name="exampleRadios" id="exampleRadios3" value="option3" disabled>
<label class="form-check-label" for="exampleRadios3">
Disabled radio
</label>
</div>
Ƒo dzesiɖakawo alo radiowo nu ƒu ɖe fli ɖeka si le tsia dzi la dzi to wo tsɔtsɔ kpe .form-check-inline
ɖe ɖesiaɖe .form-check
ŋu me.
<div class="form-check form-check-inline">
<input class="form-check-input" type="checkbox" id="inlineCheckbox1" value="option1">
<label class="form-check-label" for="inlineCheckbox1">1</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="checkbox" id="inlineCheckbox2" value="option2">
<label class="form-check-label" for="inlineCheckbox2">2</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="checkbox" id="inlineCheckbox3" value="option3" disabled>
<label class="form-check-label" for="inlineCheckbox3">3 (disabled)</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio1" value="option1">
<label class="form-check-label" for="inlineRadio1">1</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio2" value="option2">
<label class="form-check-label" for="inlineRadio2">2</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio3" value="option3" disabled>
<label class="form-check-label" for="inlineRadio3">3 (disabled)</label>
</div>
Tsɔ kpe .position-static
ɖe nyawo tsɔtsɔ de eme .form-check
siwo me label nuŋɔŋlɔ aɖeke mele o ŋu. Ðo ŋku edzi nàgatsɔ dzesidenu ƒomevi aɖe ana mɔ̃ɖaŋununya siwo kpena ɖe ame ŋu (le kpɔɖeŋu me, zazã aria-label
).
<div class="form-check">
<input class="form-check-input position-static" type="checkbox" id="blankCheckbox" value="option1" aria-label="...">
</div>
<div class="form-check">
<input class="form-check-input position-static" type="radio" name="blankRadio" id="blankRadio1" value="option1" aria-label="...">
</div>
Esi wònye be Bootstrap wɔa dɔ display: block
eye wòzãa width: 100%
míaƒe agbalẽviwo ƒe dziɖuɖuwo katã kloe ta la, agbalẽviwo aƒo ƒu ɖe tsitrenu le gɔmedzedzea me. Woateŋu azã klass bubuwo atsɔ atrɔ asi le ɖoɖo sia ŋu le agbalẽvi ɖesiaɖe nu.
Klas .form-group
lae nye mɔ bɔbɔetɔ kekeake si dzi woato atsɔ ɖoɖo aɖewo akpe ɖe agbalẽviwo ŋu. Enaa klass si te ŋu trɔna ɖe nɔnɔmewo ŋu si dea dzesiwo, dziɖuɖuwo, kpekpeɖeŋu nuŋɔŋlɔ siwo woate ŋu atia, kple nuŋlɔɖiwo ƒe kpeɖodzi gbedasiwo ƒe ƒuƒoƒo nyuie ƒe dzi ƒo. By default it only applies margin-bottom
, gake efɔa atsyã bubuwo ɖe eme .form-inline
ne ehiã. Zãe kple <fieldset>
s, <div>
s, alo nu bubu ɖesiaɖe kloe.
<form>
<div class="form-group">
<label for="formGroupExampleInput">Example label</label>
<input type="text" class="form-control" id="formGroupExampleInput" placeholder="Example input">
</div>
<div class="form-group">
<label for="formGroupExampleInput2">Another label</label>
<input type="text" class="form-control" id="formGroupExampleInput2" placeholder="Another input">
</div>
</form>
Woateŋu atu agbalẽvi siwo sesẽ wu to míaƒe grid klasswo zazã me. Zã esiawo na nuŋlɔɖi ƒe ɖoɖo siwo hiã sɔti geɖe, kekeme vovovowo, kple ɖoɖowɔwɔ ƒe tiatia bubuwo.
<form>
<div class="row">
<div class="col">
<input type="text" class="form-control" placeholder="First name">
</div>
<div class="col">
<input type="text" class="form-control" placeholder="Last name">
</div>
</div>
</form>
Àteŋu aɖɔli hã .row
na .form-row
, míaƒe grid fli si wozãna ɖaa ƒe tɔtrɔ si tsia sɔti ƒe tsiɖɔɖɔɖɔɖɔɖo siwo woɖo ɖi la ɖa hena ɖoɖo siwo le sesẽm wu eye wole sue wu.
<form>
<div class="form-row">
<div class="col">
<input type="text" class="form-control" placeholder="First name">
</div>
<div class="col">
<input type="text" class="form-control" placeholder="Last name">
</div>
</div>
</form>
Woateŋu awɔ ɖoɖo siwo sesẽ wu hã kple grid ɖoɖoa.
<form>
<div class="form-row">
<div class="form-group col-md-6">
<label for="inputEmail4">Email</label>
<input type="email" class="form-control" id="inputEmail4" placeholder="Email">
</div>
<div class="form-group col-md-6">
<label for="inputPassword4">Password</label>
<input type="password" class="form-control" id="inputPassword4" placeholder="Password">
</div>
</div>
<div class="form-group">
<label for="inputAddress">Address</label>
<input type="text" class="form-control" id="inputAddress" placeholder="1234 Main St">
</div>
<div class="form-group">
<label for="inputAddress2">Address 2</label>
<input type="text" class="form-control" id="inputAddress2" placeholder="Apartment, studio, or floor">
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="inputCity">City</label>
<input type="text" class="form-control" id="inputCity">
</div>
<div class="form-group col-md-4">
<label for="inputState">State</label>
<select id="inputState" class="form-control">
<option selected>Choose...</option>
<option>...</option>
</select>
</div>
<div class="form-group col-md-2">
<label for="inputZip">Zip</label>
<input type="text" class="form-control" id="inputZip">
</div>
</div>
<div class="form-group">
<div class="form-check">
<input class="form-check-input" type="checkbox" id="gridCheck">
<label class="form-check-label" for="gridCheck">
Check me out
</label>
</div>
</div>
<button type="submit" class="btn btn-primary">Sign in</button>
</form>
Wɔ nuŋlɔɖi siwo le tsia dzi kple grid la to .row
klass la tsɔtsɔ kpe ɖe ƒuƒoƒo ƒuƒoƒowo ŋu kple .col-*-*
klassawo zazã atsɔ agblɔ wò dzesiwo kple dziɖuɖuwo ƒe kekeme. Kpɔ egbɔ be yetsɔ kpe .col-form-label
ɖe wò <label>
s hã ŋu ale be woanɔ titina le tsitrenu kple woƒe nuŋlɔɖi ƒe dziɖuɖu siwo do ƒome kplii.
Ɣeaɖewoɣi la, ɖewohĩ ahiã be nàzã margin alo padding utilities atsɔ awɔ alignment deblibo ma si nèhiã. Le kpɔɖeŋu me, míeɖe padding-top
le míaƒe radio inputs ƒe dzeside si woƒo ƒu ɖe wo nɔewo dzi la ɖa be míawɔ nuŋɔŋlɔa ƒe gɔmedzedze nyuie wu.
<form>
<div class="form-group row">
<label for="inputEmail3" class="col-sm-2 col-form-label">Email</label>
<div class="col-sm-10">
<input type="email" class="form-control" id="inputEmail3" placeholder="Email">
</div>
</div>
<div class="form-group row">
<label for="inputPassword3" class="col-sm-2 col-form-label">Password</label>
<div class="col-sm-10">
<input type="password" class="form-control" id="inputPassword3" placeholder="Password">
</div>
</div>
<fieldset class="form-group">
<div class="row">
<legend class="col-form-label col-sm-2 pt-0">Radios</legend>
<div class="col-sm-10">
<div class="form-check">
<input class="form-check-input" type="radio" name="gridRadios" id="gridRadios1" value="option1" checked>
<label class="form-check-label" for="gridRadios1">
First radio
</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="gridRadios" id="gridRadios2" value="option2">
<label class="form-check-label" for="gridRadios2">
Second radio
</label>
</div>
<div class="form-check disabled">
<input class="form-check-input" type="radio" name="gridRadios" id="gridRadios3" value="option3" disabled>
<label class="form-check-label" for="gridRadios3">
Third disabled radio
</label>
</div>
</div>
</div>
</fieldset>
<div class="form-group row">
<div class="col-sm-2">Checkbox</div>
<div class="col-sm-10">
<div class="form-check">
<input class="form-check-input" type="checkbox" id="gridCheck1">
<label class="form-check-label" for="gridCheck1">
Example checkbox
</label>
</div>
</div>
</div>
<div class="form-group row">
<div class="col-sm-10">
<button type="submit" class="btn btn-primary">Sign in</button>
</div>
</div>
</form>
Kpɔ egbɔ be yezã .col-form-label-sm
alo .col-form-label-lg
na wò <label>
s alo <legend>
s be nàwɔ ɖe kple ƒe lolome dzi .form-control-lg
nyuie .form-control-sm
.
<form>
<div class="form-group row">
<label for="colFormLabelSm" class="col-sm-2 col-form-label col-form-label-sm">Email</label>
<div class="col-sm-10">
<input type="email" class="form-control form-control-sm" id="colFormLabelSm" placeholder="col-form-label-sm">
</div>
</div>
<div class="form-group row">
<label for="colFormLabel" class="col-sm-2 col-form-label">Email</label>
<div class="col-sm-10">
<input type="email" class="form-control" id="colFormLabel" placeholder="col-form-label">
</div>
</div>
<div class="form-group row">
<label for="colFormLabelLg" class="col-sm-2 col-form-label col-form-label-lg">Email</label>
<div class="col-sm-10">
<input type="email" class="form-control form-control-lg" id="colFormLabelLg" placeholder="col-form-label-lg">
</div>
</div>
</form>
.col
Abe alesi woɖee fia le kpɔɖeŋu siwo do ŋgɔ me ene la, míaƒe grid ɖoɖoa na be nàte ŋu atsɔ s xexlẽme ɖesiaɖe ade a .row
alo .form-row
. Woama kekeme si li la ɖe wo dome sɔsɔe. Àteŋu atia wò sɔtiwo ƒe akpa sue aɖe hã be wòaxɔ teƒe geɖe alo sue aɖe, esime .col
s susɔeawo ma susɔeawo sɔsɔe, kple sɔtiwo ƒe hatsotso tɔxɛwo abe .col-7
.
<form>
<div class="form-row">
<div class="col-7">
<input type="text" class="form-control" placeholder="City">
</div>
<div class="col">
<input type="text" class="form-control" placeholder="State">
</div>
<div class="col">
<input type="text" class="form-control" placeholder="Zip">
</div>
</div>
</form>
Kpɔɖeŋu si le ete zãa flexbox dɔwɔnu tsɔ ɖoa emenyawo titina le tsitrenu eye wòtrɔna .col
ɖe eŋu .col-auto
ale be wò sɔtiwo naxɔ teƒe geɖe ko alesi wòhiã. Ne míagblɔe bubui la, sɔtiawo ƒe lolome nɔa te ɖe emenyawo dzi.
<form>
<div class="form-row align-items-center">
<div class="col-auto">
<label class="sr-only" for="inlineFormInput">Name</label>
<input type="text" class="form-control mb-2" id="inlineFormInput" placeholder="Jane Doe">
</div>
<div class="col-auto">
<label class="sr-only" for="inlineFormInputGroup">Username</label>
<div class="input-group mb-2">
<div class="input-group-prepend">
<div class="input-group-text">@</div>
</div>
<input type="text" class="form-control" id="inlineFormInputGroup" placeholder="Username">
</div>
</div>
<div class="col-auto">
<div class="form-check mb-2">
<input class="form-check-input" type="checkbox" id="autoSizingCheck">
<label class="form-check-label" for="autoSizingCheck">
Remember me
</label>
</div>
</div>
<div class="col-auto">
<button type="submit" class="btn btn-primary mb-2">Submit</button>
</div>
</div>
</form>
Emegbe àteŋu agbugbɔ atsaka ema ake kple sɔti ƒe klass siwo ƒe lolome le koŋ.
<form>
<div class="form-row align-items-center">
<div class="col-sm-3 my-1">
<label class="sr-only" for="inlineFormInputName">Name</label>
<input type="text" class="form-control" id="inlineFormInputName" placeholder="Jane Doe">
</div>
<div class="col-sm-3 my-1">
<label class="sr-only" for="inlineFormInputGroupUsername">Username</label>
<div class="input-group">
<div class="input-group-prepend">
<div class="input-group-text">@</div>
</div>
<input type="text" class="form-control" id="inlineFormInputGroupUsername" placeholder="Username">
</div>
</div>
<div class="col-auto my-1">
<div class="form-check">
<input class="form-check-input" type="checkbox" id="autoSizingCheck2">
<label class="form-check-label" for="autoSizingCheck2">
Remember me
</label>
</div>
</div>
<div class="col-auto my-1">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</form>
Eye le nyateƒe me la , wodoa alɔ custom form controls .
<form>
<div class="form-row align-items-center">
<div class="col-auto my-1">
<label class="mr-sm-2" for="inlineFormCustomSelect">Preference</label>
<select class="custom-select mr-sm-2" id="inlineFormCustomSelect">
<option selected>Choose...</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
</div>
<div class="col-auto my-1">
<div class="custom-control custom-checkbox mr-sm-2">
<input type="checkbox" class="custom-control-input" id="customControlAutosizing">
<label class="custom-control-label" for="customControlAutosizing">Remember my preference</label>
</div>
</div>
<div class="col-auto my-1">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</form>
Zã .form-inline
klass la nàtsɔ aɖe dzesiwo, nuŋlɔɖiwo dzi kpɔkpɔ, kple abɔta siwo kplɔ wo nɔewo ɖo afia le fli ɖeka si le tsia dzi dzi. Agbalẽvi dzi kpɔkpɔ le agbalẽvi siwo le fli me me to vovo vie tso woƒe nɔnɔme gbãtɔwo gbɔ.
- Controls are
display: flex
, collapsing any HTML white space eye wòɖe mɔ na wò be nàna alignment control kple dometsotso kple flexbox utilities. - Dziɖuɖuwo kple nyawo tsɔtsɔ de eme ƒe ƒuƒoƒowo xɔa
width: auto
be woaɖe asi le Bootstrap ƒe gɔmedzedzewidth: 100%
ŋu . - Ðeko dziɖunuwo dzena le fli me le nukpɔkpɔ siwo keke 576px ya teti me be woatsɔ abu akɔnta le nukpɔkpɔ gbadza siwo le asitelefonwo dzi ŋu.
Ðewohĩ ahiã be nàtsɔ asi akpɔ agbalẽvi ɖekaɖekawo ƒe dziɖuɖuwo ƒe kekeme kple woƒe sɔsɔme gbɔ kple dometsotso ƒe dɔwɔnuwo (abe alesi woɖee fia le ete ene). Mlɔeba la, kpɔ egbɔ be yede <label>
agbalẽvi ɖesiaɖe dzi ɣesiaɣi, ne ehiã be yeaɣlae ɖe amedzro siwo menye screenreader o kple .sr-only
.
<form class="form-inline">
<label class="sr-only" for="inlineFormInputName2">Name</label>
<input type="text" class="form-control mb-2 mr-sm-2" id="inlineFormInputName2" placeholder="Jane Doe">
<label class="sr-only" for="inlineFormInputGroupUsername2">Username</label>
<div class="input-group mb-2 mr-sm-2">
<div class="input-group-prepend">
<div class="input-group-text">@</div>
</div>
<input type="text" class="form-control" id="inlineFormInputGroupUsername2" placeholder="Username">
</div>
<div class="form-check mb-2 mr-sm-2">
<input class="form-check-input" type="checkbox" id="inlineFormCheck">
<label class="form-check-label" for="inlineFormCheck">
Remember me
</label>
</div>
<button type="submit" class="btn btn-primary mb-2">Submit</button>
</form>
Wodoa alɔ agbalẽvi ƒe dziɖuɖu kple tiatia siwo wowɔ ɖe ɖoɖo nu hã.
<form class="form-inline">
<label class="my-1 mr-2" for="inlineFormCustomSelectPref">Preference</label>
<select class="custom-select my-1 mr-sm-2" id="inlineFormCustomSelectPref">
<option selected>Choose...</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<div class="custom-control custom-checkbox my-1 mr-sm-2">
<input type="checkbox" class="custom-control-input" id="customControlInline">
<label class="custom-control-label" for="customControlInline">Remember my preference</label>
</div>
<button type="submit" class="btn btn-primary my-1">Submit</button>
</form>
Mɔnu siwo woate ŋu azã ɖe dzeside ɣaɣlawo teƒe
Kpekpeɖeŋunamɔ̃wo abe screen readers ene akpɔ kuxi le wò agbalẽviwo ŋu ne mède dzesidenu ɖesiaɖe si nèŋlɔ la ŋu o. Le agbalẽvi siawo siwo le fli me gome la, àte ŋu aɣla dzesideawo to .sr-only
klass la zazã me. Mɔnu bubuwo li siwo dzi woato ana dzeside na mɔ̃ɖaŋununya siwo kpena ɖe ame ŋu, abe aria-label
, aria-labelledby
alo title
nɔnɔme ene. Ne esiawo dometɔ aɖeke mele eme o la, kpekpeɖeŋunamɔ̃wo ate ŋu azã placeholder
nɔnɔmea, ne ele eme, gake de dzesii be placeholder
womeɖo aɖaŋu be woazãe atsɔ aɖo dzesidemɔnu bubuwo teƒe o.
Woateŋu awɔ kpekpeɖeŋu nuŋɔŋlɔ si le agbalẽviwo me le mɔxenu ƒe ɖoɖo nu to .form-text
(si woyɔna tsã be .help-block
le v3 me) zazã me. Woateŋu awɔ kpekpeɖeŋu nuŋɔŋlɔ si le fli me ŋudɔ le mɔ si trɔna nu to HTML ƒe akpa ɖesiaɖe si le fli me kple dɔwɔnu ƒe hatsotsowo abe .text-muted
.
Kpekpeɖeŋu nuŋɔŋlɔa tsɔtsɔ do ƒome kple agbalẽvi dzi kpɔkpɔwo
Ele be kpekpeɖeŋunuŋɔŋlɔ nado ƒome tẽ kple nuŋlɔɖi ƒe dziɖuɖu si wòku ɖe aria-describedby
nɔnɔmea zazã ŋu. Esia ana mɔ̃ɖaŋununya siwo kpena ɖe ame ŋu—abe screen readers ene—aɖe gbeƒã kpekpeɖeŋunya sia ne ezãla ƒe susu le nu ŋu alo ge ɖe edzi le mɔ̃a dzi.
Kpekpeɖeŋu nuŋɔŋlɔ si le ete nyawo ate ŋu awɔ atsyã kple .form-text
. Klass sia display: block
tsɔa tame margin aɖewo dea eme eye wòtsɔa wo kpena ɖe eŋu hena dometsotso bɔbɔe tso nusiwo wotsɔ de eme siwo le etame gbɔ.
<label for="inputPassword5">Password</label>
<input type="password" id="inputPassword5" class="form-control" aria-describedby="passwordHelpBlock">
<small id="passwordHelpBlock" class="form-text text-muted">
Your password must be 8-20 characters long, contain letters and numbers, and must not contain spaces, special characters, or emoji.
</small>
Inline text ateŋu azã inline HTML element ɖesiaɖe si bɔ (eɖanye <small>
, <span>
, alo nu bubu aɖe o) kple naneke wu utility class o.
<form class="form-inline">
<div class="form-group">
<label for="inputPassword6">Password</label>
<input type="password" id="inputPassword6" class="form-control mx-sm-3" aria-describedby="passwordHelpInline">
<small id="passwordHelpInline" class="text-muted">
Must be 8-20 characters long.
</small>
</div>
</form>
Tsɔ disabled
boolean nɔnɔme kpe ɖe nyawo tsɔtsɔ de eme ŋu be nàxe mɔ ɖe zãla ƒe kadodowo nu eye nàna wòadze abe ɖe wòle bɔbɔe ene.
Tsɔ disabled
nɔnɔmea kpe ɖe a <fieldset>
ŋu be nàwɔ dziɖuɖu siwo katã le eme la nuwɔametɔe.
<form>
<fieldset disabled>
<div class="form-group">
<label for="disabledTextInput">Disabled input</label>
<input type="text" id="disabledTextInput" class="form-control" placeholder="Disabled input">
</div>
<div class="form-group">
<label for="disabledSelect">Disabled select menu</label>
<select id="disabledSelect" class="form-control">
<option>Disabled select</option>
</select>
</div>
<div class="form-check">
<input class="form-check-input" type="checkbox" id="disabledFieldsetCheck" disabled>
<label class="form-check-label" for="disabledFieldsetCheck">
Can't check this
</label>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</fieldset>
</form>
Nuxlɔ̃ame kple sekewo
Le gɔmedzedzea me la, web-browserwo awɔ nu ɖe native form controls ( <input>
, <select>
kple <button>
elements) siwo katã le a me ŋu <fieldset disabled>
abe nuwɔametɔwo ene, si axe mɔ na keyboard kple mouse siaa ƒe kadodo le wo dzi. Gake ne nusiwo le wò agbalẽvia me hã le eme <a ... class="btn btn-*">
la, ke pointer-events: none
. Abe alesi míede dzesii le akpa si ku ɖe nuwɔametɔ ƒe nɔnɔme ŋu na abɔtawo (eye vevietɔ le akpa sue si ku ɖe seke ƒe akpawo ŋu) me ene la, womeɖo CSS ƒe nɔnɔme sia ɖe ɖoɖo nu haɖe o eye womedo alɔe bliboe le Opera 18 kple esiwo le ete me o, alo le Internet Explorer 10 me, eye wòɖu dzi 't xe mɔ na keyboard zãlawo be woagate ŋu atsɔ woƒe susu aɖo kadodo siawo ŋu alo awɔ wo ŋudɔ o. Eyata be nànɔ dedie la, zã JavaScript si wowɔ ɖe ɖoɖo nu nàtsɔ awɔ kadodo mawo ŋudɔ.
Cross-browser ƒe dɔwɔwɔ ɖekae
Togbɔ be Bootstrap awɔ atsyã siawo ŋudɔ le web-browserwo katã me hã la, Internet Explorer 11 kple esiwo le ete mewɔa dɔ bliboe le disabled
nɔnɔme si le a <fieldset>
. Zã JavaScript si nèwɔ ɖe ɖoɖo nu nàtsɔ axe mɔ ɖe fieldset la nu le web-browser siawo me.
Na nyaŋuɖoɖo xɔasi, si ŋu woate ŋu awɔ dɔ le na wò zãlawo kple HTML5 ƒe agbalẽvi ƒe kpeɖodzi– si le míaƒe web-browser siwo katã míedoa alɔ me . Tia tso web-browser ƒe kpeɖodzinya ƒe nyaŋuɖoɖo gbãtɔa me, alo nàwɔ gbedasi tɔxɛwo ŋudɔ kple míaƒe klass siwo wotu ɖe eme kple JavaScript gɔmedzedze.
Míele aɖaŋu ɖom vevie be woawɔ kpeɖodzinana ƒe atsyã tɔxɛwo elabena womeɖea gbeƒã native browser defaults na screen readers o.
Alesi agbalẽvi ƒe kpeɖodzinana wɔa dɔe kple Bootstrap enye si:
- Wozãa HTML gbalẽvi ƒe kpeɖodzinana to CSS ƒe alakpa-klas eve dzi,
:invalid
kple:valid
. Eku ɖe<input>
,<select>
, kple<textarea>
nu veviwo ŋu. - Bootstrap scopes the
:invalid
kple:valid
atsyãwo na dzila.was-validated
ƒe klass, zi geɖe la, wozãnɛ ɖe<form>
. Ne menye nenema o la, agble ɖesiaɖe si wobia si me asixɔxɔ aɖeke mele o la adze abe mesɔ o ene le axa ƒe agbatsɔtsɔ me. To mɔ sia dzi la, àte ŋu atia ɣeyiɣi si nàwɔ dɔ le wo ŋu (zi geɖe la, ne wote agbalẽviawo ɖoɖo ɖa vɔ). - Abe fallback ene,
.is-invalid
eye.is-valid
woateŋu azã klasswo ɖe pseudo-classes teƒe na server side validation . Womebia.was-validated
dzilawo ƒe klass o. - Le mɔxexe ɖe alesi CSS wɔa dɔe ta la, míate ŋu (fifia) awɔ atsyãwo ŋudɔ ɖe a
<label>
si va doa ŋgɔ na nuŋlɔɖi dzikpɔkpɔ le DOM me JavaScript si wowɔ ɖe ɖoɖo nu ƒe kpekpeɖeŋu manɔmee o. - Egbegbe web-browserwo katã doa alɔ constraint validation API , si nye JavaScript mɔnu siwo kplɔ wo nɔewo ɖo tsɔ ɖoa kpe agbalẽviwo dzi kpɔkpɔ dzi.
- Nyaŋuɖoɖowo ate ŋu azã web-browser ƒe nɔnɔme gbãtɔwo (woto vovo na web-browser ɖesiaɖe, eye womate ŋu atrɔ asi le wo ŋu to CSS dzi o) alo míaƒe nyaŋuɖoɖo ƒe atsyã tɔxɛwo kple HTML kple CSS bubuwo.
- Àte ŋu ana gbedasi siwo wowɔ ɖe ɖoɖo nu ƒe kpeɖodzinyawo kple
setCustomValidity
le JavaScript me.
Esi esia le susu me na wò la, bu míaƒe agbalẽvi ƒe kpeɖodzi ƒe atsyã tɔxɛwo, server ƒe akpa ƒe klass siwo woate ŋu atia, kple browser ƒe nɔnɔme gbãtɔwo ƒe wɔwɔfia siwo gbɔna ŋu kpɔ.
Le Bootstrap ƒe nuŋlɔɖi ƒe kpeɖodzi gbedasi tɔxɛwo gome la, ahiã be nàtsɔ novalidate
boolean nɔnɔmea akpe ɖe wò <form>
. Esia na be browser ƒe nyaŋuɖoɖo ƒe aɖaŋuɖoɖo siwo woɖo ɖi la mewɔa dɔ o, gake eganaa mɔnukpɔkpɔ ame be wòakpɔ agbalẽviawo ƒe kpeɖodzi APIwo le JavaScript me. Dze agbagba nàtsɔ agbalẽvi si le ete la aɖo ɖa; míaƒe JavaScript la axe mɔ ɖe submit ƒe dzesi la nu eye wòagblɔ nyaŋuɖoɖowo na wò.
Ne èle agbagba dzem be yeaɖoe ɖa la, àkpɔ :invalid
kple :valid
atsyã siwo wozã ɖe wò agbalẽvia dzi kpɔkpɔ ŋu.
<form class="needs-validation" novalidate>
<div class="form-row">
<div class="col-md-4 mb-3">
<label for="validationCustom01">First name</label>
<input type="text" class="form-control" id="validationCustom01" placeholder="First name" value="Mark" required>
<div class="valid-feedback">
Looks good!
</div>
</div>
<div class="col-md-4 mb-3">
<label for="validationCustom02">Last name</label>
<input type="text" class="form-control" id="validationCustom02" placeholder="Last name" value="Otto" required>
<div class="valid-feedback">
Looks good!
</div>
</div>
<div class="col-md-4 mb-3">
<label for="validationCustomUsername">Username</label>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text" id="inputGroupPrepend">@</span>
</div>
<input type="text" class="form-control" id="validationCustomUsername" placeholder="Username" aria-describedby="inputGroupPrepend" required>
<div class="invalid-feedback">
Please choose a username.
</div>
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-6 mb-3">
<label for="validationCustom03">City</label>
<input type="text" class="form-control" id="validationCustom03" placeholder="City" required>
<div class="invalid-feedback">
Please provide a valid city.
</div>
</div>
<div class="col-md-3 mb-3">
<label for="validationCustom04">State</label>
<input type="text" class="form-control" id="validationCustom04" placeholder="State" required>
<div class="invalid-feedback">
Please provide a valid state.
</div>
</div>
<div class="col-md-3 mb-3">
<label for="validationCustom05">Zip</label>
<input type="text" class="form-control" id="validationCustom05" placeholder="Zip" required>
<div class="invalid-feedback">
Please provide a valid zip.
</div>
</div>
</div>
<div class="form-group">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="invalidCheck" required>
<label class="form-check-label" for="invalidCheck">
Agree to terms and conditions
</label>
<div class="invalid-feedback">
You must agree before submitting.
</div>
</div>
</div>
<button class="btn btn-primary" type="submit">Submit form</button>
</form>
<script>
// Example starter JavaScript for disabling form submissions if there are invalid fields
(function() {
'use strict';
window.addEventListener('load', function() {
// Fetch all the forms we want to apply custom Bootstrap validation styles to
var forms = document.getElementsByClassName('needs-validation');
// Loop over them and prevent submission
var validation = Array.prototype.filter.call(forms, function(form) {
form.addEventListener('submit', function(event) {
if (form.checkValidity() === false) {
event.preventDefault();
event.stopPropagation();
}
form.classList.add('was-validated');
}, false);
});
}, false);
})();
</script>
Mètsɔ ɖeke le custom validation feedback gbedasiwo alo JavaScript ŋɔŋlɔ me be nàtrɔ agbalẽvi ƒe nuwɔnawo oa? Wo katã nyuie, àte ŋu azã browser la ƒe defaults. Te agbalẽvi si le ete la ɖoɖo ɖa kpɔ. Le wò browser kple OS nu la, àkpɔ nyaŋuɖoɖo ƒe atsyã si to vovo vie.
Togbɔ be womateŋu awɔ nyaŋuɖoɖo ƒe atsyã siawo kple CSS o hã la, àteŋu atrɔ asi le nyaŋuɖoɖo ƒe nuŋɔŋlɔa ŋu kokoko to JavaScript dzi.
<form>
<div class="form-row">
<div class="col-md-4 mb-3">
<label for="validationDefault01">First name</label>
<input type="text" class="form-control" id="validationDefault01" placeholder="First name" value="Mark" required>
</div>
<div class="col-md-4 mb-3">
<label for="validationDefault02">Last name</label>
<input type="text" class="form-control" id="validationDefault02" placeholder="Last name" value="Otto" required>
</div>
<div class="col-md-4 mb-3">
<label for="validationDefaultUsername">Username</label>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text" id="inputGroupPrepend2">@</span>
</div>
<input type="text" class="form-control" id="validationDefaultUsername" placeholder="Username" aria-describedby="inputGroupPrepend2" required>
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-6 mb-3">
<label for="validationDefault03">City</label>
<input type="text" class="form-control" id="validationDefault03" placeholder="City" required>
</div>
<div class="col-md-3 mb-3">
<label for="validationDefault04">State</label>
<input type="text" class="form-control" id="validationDefault04" placeholder="State" required>
</div>
<div class="col-md-3 mb-3">
<label for="validationDefault05">Zip</label>
<input type="text" class="form-control" id="validationDefault05" placeholder="Zip" required>
</div>
</div>
<div class="form-group">
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="invalidCheck2" required>
<label class="form-check-label" for="invalidCheck2">
Agree to terms and conditions
</label>
</div>
</div>
<button class="btn btn-primary" type="submit">Submit form</button>
</form>
Míele aɖaŋu ɖom be nàzã client side validation, gake nenye be èhiã server side la, àteŋu afia agbalẽvi ƒe akpa siwo mele eteƒe o eye wosɔ kple .is-invalid
kple .is-valid
. De dzesii be .invalid-feedback
wodoa alɔe hã kple klass siawo.
<form>
<div class="form-row">
<div class="col-md-4 mb-3">
<label for="validationServer01">First name</label>
<input type="text" class="form-control is-valid" id="validationServer01" placeholder="First name" value="Mark" required>
<div class="valid-feedback">
Looks good!
</div>
</div>
<div class="col-md-4 mb-3">
<label for="validationServer02">Last name</label>
<input type="text" class="form-control is-valid" id="validationServer02" placeholder="Last name" value="Otto" required>
<div class="valid-feedback">
Looks good!
</div>
</div>
<div class="col-md-4 mb-3">
<label for="validationServerUsername">Username</label>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text" id="inputGroupPrepend3">@</span>
</div>
<input type="text" class="form-control is-invalid" id="validationServerUsername" placeholder="Username" aria-describedby="inputGroupPrepend3" required>
<div class="invalid-feedback">
Please choose a username.
</div>
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-6 mb-3">
<label for="validationServer03">City</label>
<input type="text" class="form-control is-invalid" id="validationServer03" placeholder="City" required>
<div class="invalid-feedback">
Please provide a valid city.
</div>
</div>
<div class="col-md-3 mb-3">
<label for="validationServer04">State</label>
<input type="text" class="form-control is-invalid" id="validationServer04" placeholder="State" required>
<div class="invalid-feedback">
Please provide a valid state.
</div>
</div>
<div class="col-md-3 mb-3">
<label for="validationServer05">Zip</label>
<input type="text" class="form-control is-invalid" id="validationServer05" placeholder="Zip" required>
<div class="invalid-feedback">
Please provide a valid zip.
</div>
</div>
</div>
<div class="form-group">
<div class="form-check">
<input class="form-check-input is-invalid" type="checkbox" value="" id="invalidCheck3" required>
<label class="form-check-label" for="invalidCheck3">
Agree to terms and conditions
</label>
<div class="invalid-feedback">
You must agree before submitting.
</div>
</div>
</div>
<button class="btn btn-primary" type="submit">Submit form</button>
</form>
Míaƒe kpɔɖeŋu nuŋlɔɖiwo fia native textual <input>
s le etame, gake nuŋlɔɖi ƒe kpeɖodzi ƒe atsyãwo li na míaƒe agbalẽvi ƒe dziɖuɖu tɔxɛwo, hã.
<form class="was-validated">
<div class="custom-control custom-checkbox mb-3">
<input type="checkbox" class="custom-control-input" id="customControlValidation1" required>
<label class="custom-control-label" for="customControlValidation1">Check this custom checkbox</label>
<div class="invalid-feedback">Example invalid feedback text</div>
</div>
<div class="custom-control custom-radio">
<input type="radio" class="custom-control-input" id="customControlValidation2" name="radio-stacked" required>
<label class="custom-control-label" for="customControlValidation2">Toggle this custom radio</label>
</div>
<div class="custom-control custom-radio mb-3">
<input type="radio" class="custom-control-input" id="customControlValidation3" name="radio-stacked" required>
<label class="custom-control-label" for="customControlValidation3">Or toggle this other custom radio</label>
<div class="invalid-feedback">More example invalid feedback text</div>
</div>
<div class="form-group">
<select class="custom-select" required>
<option value="">Open this select menu</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<div class="invalid-feedback">Example invalid custom select feedback</div>
</div>
<div class="custom-file">
<input type="file" class="custom-file-input" id="validatedCustomFile" required>
<label class="custom-file-label" for="validatedCustomFile">Choose file...</label>
<div class="invalid-feedback">Example invalid custom file feedback</div>
</div>
</form>
Ne wò agbalẽvi ƒe ɖoɖo ɖe mɔ ɖe eŋu la, àteŋu aɖɔli .{valid|invalid}-feedback
klassawo ɖe .{valid|invalid}-tooltip
klasswo ta be woaɖe kpeɖodzinyaŋuɖoɖo afia le dɔwɔnu ƒe aɖaŋuɖoɖo si wowɔ ɖe atsyã me. Kpɔ egbɔ be dzila aɖe position: relative
le asiwò hena dɔwɔnu ƒe aɖaŋuɖoɖo ƒe ɖoɖowɔwɔ. Le kpɔɖeŋu si le ete me la, esia le míaƒe kɔlam klasswo si xoxo, gake wò dɔa ateŋu abia ɖoɖo bubu.
<form class="needs-validation" novalidate>
<div class="form-row">
<div class="col-md-4 mb-3">
<label for="validationTooltip01">First name</label>
<input type="text" class="form-control" id="validationTooltip01" placeholder="First name" value="Mark" required>
<div class="valid-tooltip">
Looks good!
</div>
</div>
<div class="col-md-4 mb-3">
<label for="validationTooltip02">Last name</label>
<input type="text" class="form-control" id="validationTooltip02" placeholder="Last name" value="Otto" required>
<div class="valid-tooltip">
Looks good!
</div>
</div>
<div class="col-md-4 mb-3">
<label for="validationTooltipUsername">Username</label>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text" id="validationTooltipUsernamePrepend">@</span>
</div>
<input type="text" class="form-control" id="validationTooltipUsername" placeholder="Username" aria-describedby="validationTooltipUsernamePrepend" required>
<div class="invalid-tooltip">
Please choose a unique and valid username.
</div>
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-6 mb-3">
<label for="validationTooltip03">City</label>
<input type="text" class="form-control" id="validationTooltip03" placeholder="City" required>
<div class="invalid-tooltip">
Please provide a valid city.
</div>
</div>
<div class="col-md-3 mb-3">
<label for="validationTooltip04">State</label>
<input type="text" class="form-control" id="validationTooltip04" placeholder="State" required>
<div class="invalid-tooltip">
Please provide a valid state.
</div>
</div>
<div class="col-md-3 mb-3">
<label for="validationTooltip05">Zip</label>
<input type="text" class="form-control" id="validationTooltip05" placeholder="Zip" required>
<div class="invalid-tooltip">
Please provide a valid zip.
</div>
</div>
</div>
<button class="btn btn-primary" type="submit">Submit form</button>
</form>
Ne èdi be yeatrɔ asi le eŋu geɖe wu eye wòawɔ ɖeka kple cross browser la, zã míaƒe agbalẽvi ƒe akpa siwo nètrɔ asi le keŋkeŋ la nàtsɔ aɖɔli web-browser la ƒe nɔnɔme gbãtɔwo. Wotu wo ɖe gɔmesese kple dzesidede si ŋu woate ŋu aɖo la tame, eyata wonye nu sesẽ siwo woatsɔ aɖɔli agbalẽvi ƒe dziɖuɖu ɖesiaɖe si woɖo ɖi.
Woxatsa aɖaka kple radio ɖesiaɖe ɖe a <div>
me kple nɔvi aɖe <span>
be míawɔ míaƒe custom control kple a <label>
na nuŋɔŋlɔ si kpe ɖe eŋu. Le ɖoɖo nu la, esia nye mɔnu ma ke si míezãna le gɔmedzedzea .form-check
me .
Míezãa nɔviŋutsu tiatia ( ~
) na míaƒe <input>
nutoawo katã—abe :checked
—be míawɔ míaƒe agbalẽvi ƒe dzesi si wowɔ ɖe ɖoɖo nu la ƒe atsyã nyuie. Ne míetsɔe kpe ɖe .custom-control-label
klass la ŋu la, míate ŋu awɔ nuŋɔŋlɔa ƒe atsyã hã na nu ɖesiaɖe le <input>
's nɔnɔme nu.
Míeɣlaa default la <input>
kple opacity
eye míezãa la .custom-control-label
tsɔ tua custom form indicator yeye ɖe eƒe teƒe kple ::before
kple ::after
. Nublanuitɔe la, míate ŋu atu custom ɖeka tso ko me <input>
o elabena CSS's content
mewɔa dɔ le element ma dzi o.
Le nɔnɔme siwo wodo kpɔ me la, míezãa base64 embedded SVG dzesiwo tso Open Iconic . Esia naa míekpɔa ŋusẽ nyuitɔ kekeake dzi le atsyã kple teƒeɖoɖo le web-browserwo kple mɔ̃wo dzi.
<div class="custom-control custom-checkbox">
<input type="checkbox" class="custom-control-input" id="customCheck1">
<label class="custom-control-label" for="customCheck1">Check this custom checkbox</label>
</div>
Dzesiɖaka siwo wowɔ ɖe ɖoɖo nu hã ateŋu azã :indeterminate
pseudo class la ne woɖoe kple asi to JavaScript dzi (HTML nɔnɔme aɖeke meli si woatsɔ agblɔe o).
Ne èle jQuery zãm la, ele be nane si le abe esia ene nasɔ gbɔ:
<div class="custom-control custom-radio">
<input type="radio" id="customRadio1" name="customRadio" class="custom-control-input">
<label class="custom-control-label" for="customRadio1">Toggle this custom radio</label>
</div>
<div class="custom-control custom-radio">
<input type="radio" id="customRadio2" name="customRadio" class="custom-control-input">
<label class="custom-control-label" for="customRadio2">Or toggle this other custom radio</label>
</div>
<div class="custom-control custom-radio custom-control-inline">
<input type="radio" id="customRadioInline1" name="customRadioInline1" class="custom-control-input">
<label class="custom-control-label" for="customRadioInline1">Toggle this custom radio</label>
</div>
<div class="custom-control custom-radio custom-control-inline">
<input type="radio" id="customRadioInline2" name="customRadioInline1" class="custom-control-input">
<label class="custom-control-label" for="customRadioInline2">Or toggle this other custom radio</label>
</div>
Woate ŋu awɔ dzesideɖaka kple radio siwo wowɔ ɖe ɖoɖo nu hã nuwɔametɔe. Tsɔ disabled
boolean nɔnɔme kpe ɖe la ŋu <input>
eye woawɔ ɖoɖo ɖe nɔnɔmefianu tɔxɛ kple dzeside ƒe nuŋlɔɖi ŋu le eɖokui si.
<div class="custom-control custom-checkbox">
<input type="checkbox" class="custom-control-input" id="customCheckDisabled" disabled>
<label class="custom-control-label" for="customCheckDisabled">Check this custom checkbox</label>
</div>
<div class="custom-control custom-radio">
<input type="radio" id="radio3" name="radioDisabled" id="customRadioDisabled" class="custom-control-input" disabled>
<label class="custom-control-label" for="customRadioDisabled">Toggle this custom radio</label>
</div>
Menu <select>
tɔxɛwo hiã klass tɔxɛ aɖe ko, .custom-select
be woaʋu atsyã tɔxɛawo.
<select class="custom-select">
<option selected>Open this select menu</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
Àte ŋu atiae hã tso tiatia suewo kple gãwo dome be woasɔ kple míaƒe nuŋɔŋlɔ siwo ƒe lolome sɔ kple wo nɔewo.
<select class="custom-select custom-select-lg mb-3">
<option selected>Open this select menu</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<select class="custom-select custom-select-sm">
<option selected>Open this select menu</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
Wodoa multiple
alɔ nɔnɔmea hã:
<select class="custom-select" multiple>
<option selected>Open this select menu</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
Abe alesi size
nɔnɔmea le ene la:
<select class="custom-select" size="3">
<option selected>Open this select menu</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
Faɛl ƒe nyawo tsɔtsɔ de emee nye gnarly wu le ƒuƒoƒoa me eye wòbia JavaScript kpee ne èdi be yeatsɔ wo aƒo ƒu kple dɔwɔwɔ Tia faɛl... kple faɛl ŋkɔ nuŋɔŋlɔ si nètia.
<div class="custom-file">
<input type="file" class="custom-file-input" id="customFile">
<label class="custom-file-label" for="customFile">Choose file</label>
</div>
Míeɣlaa faɛl si woɖo ɖi la <input>
to . Wowɔa abɔta la eye woɖonɛ ɖe teƒe si nye . Mlɔeba la, míeɖe gbeƒã a kple le la dzi na dometsotso nyuitɔ na nya siwo ƒo xlãe.opacity
<label>
::after
width
height
<input>
Wozãa :lang()
pseudo-class la tsɔ ɖea mɔ be woaɖe “Browse” nuŋɔŋlɔa gɔme ɖe gbe bubuwo me. Tsɔ gbegbɔgblɔ ƒe dzesi si sɔ kple ka siwo woɖo ɖe teƒea la ɖe asi alo tsɔ nyawo kpe ɖe $custom-file-text
Sass ƒe tɔtrɔ ŋu . Woate ŋu atrɔ asi le Eŋlisigbe me kaawo ŋu nenema ke. Le kpɔɖeŋu me, ale si ame ate ŋu atsɔ Spaingbe me gɔmeɖeɖe aɖe akpe ɖe eŋue nye esi (Spanishgbe me gbegbɔgblɔ ƒe kɔda nye ):es
Afi siae lang(es)
le dɔ wɔm le faɛl ƒe nuŋɔŋlɔ si wowɔ ɖe ɖoɖo nu na Spaingbe me gɔmeɖeɖe ŋu:
<div class="custom-file">
<input type="file" class="custom-file-input" id="customFileLang" lang="es">
<label class="custom-file-label" for="customFileLang">Seleccionar Archivo</label>
</div>
Ahiã be nàɖo wò nuŋlɔɖia ƒe gbegbɔgblɔ (alo eƒe ati sue) nyuie hafi nuŋɔŋlɔ si sɔ la nadze. Woateŋu awɔ esia to nɔnɔme silang
le <html>
element la dzi alo Content-Language
HTTP tanya la zazã me , le mɔnu bubuwo dome.