Ohatra sy torolalana fampiasana ho an'ny fomba fanaraha-maso ny endrika, safidy fandrindrana ary singa manokana amin'ny famoronana endrika isan-karazany.
Overview
Ny fanaraha-maso ny endrika Bootstrap dia mivelatra amin'ny endrika endrika Rebooted miaraka amin'ny kilasy. Ampiasao ireo kilasy ireo mba hisafidianana amin'ny fampiratiana voatokana ho an'ny fandikana tsy miovaova kokoa amin'ny navigateur sy fitaovana.
Aza hadino ny mampiasa typetoetra mety amin'ny fampidirana rehetra (oh: emailny adiresy mailaka na numberny fampahalalana isa) mba hanararaotra ny fanaraha-maso vaovao kokoa toy ny fanamarinana mailaka, fifantenana isa, sy ny maro hafa.
Ity misy ohatra haingana hanehoana ny endrika endrika Bootstrap. Tohizo ny famakiana ho an'ny antontan-taratasy momba ny kilasy ilaina, ny famolavolana endrika, sy ny maro hafa.
Fifehezana endrika
Ny fanaraha-mason'ny endri-tsoratra—toy ny <input>s, <select>s, ary <textarea>s—dia atao amin'ny .form-controlkilasy. Ao anatin'izany ny endrika ho an'ny endrika ankapobeny, ny toetry ny fifantohana, ny habeny ary ny maro hafa.
Aza hadino ny mijery ireo endrika fanaonay mba hahitana fomba hafa <select>.
Ho an'ny fampidiran-drakitra, ampifamadiho .form-controlny .form-control-file.
Famaritana
Mametraha haavo amin'ny fampiasana kilasy toy ny .form-control-lgand .form-control-sm.
Mamaky fotsiny
Ampio ny readonlytoetra boolean amin'ny fidirana iray mba hisorohana ny fanovana ny sandan'ny fidirana. Ny fampidirana vakiana fotsiny dia toa maivana kokoa (tahaka ny fampidirana kilemaina), saingy tazony ny cursor mahazatra.
Lahatsoratra tsotra fotsiny
Raha te hanana <input readonly>singa ao amin'ny endrikao ho toy ny lahatsoratra tsotra ianao dia ampiasao ny .form-control-plaintextkilasy hanesorana ny famolavolan'ny sahan'ny endrika default ary tehirizo ny sisiny sy ny padding marina.
Nohatsaraina ny boaty fisavana sy ny radio mahazatra miaraka amin'ny fanampian'ny .form-check, kilasy tokana ho an'ireo karazana fampidirana izay manatsara ny fandrindrana sy ny fitondran-tenan'ireo singa HTML . Ny boaty fanamarihana dia natao hisafidianana safidy iray na maromaro ao anaty lisitra, raha ny radio kosa dia natao hisafidianana safidy iray amin'ny maro.
Tohanana ny boaty fisaka sy radio kilemaina. Ny disabledtoetra dia hampihatra loko maivana kokoa hanampy amin'ny famantarana ny toetran'ny fampidirana.
Ny boaty sy ny bokotra radio dia manohana ny fanamarinana endrika mifototra amin'ny HTML ary manome etikety fohy sy azo idirana. Noho izany, ny <input>s sy <label>s dia singa iray mpirahalahy mifanohitra amin'ny <input>ao anatin'ny <label>. Somary be verbose kokoa ity satria tsy maintsy amaritanao ny toetra idsy forny toetra mifandraika amin'ny <input>and <label>.
Default (mifantina)
Amin'ny alàlan'ny default, izay isan'ny boaty fisaka sy radio izay mpiray tampo akaiky dia hatambatra mitsangana ary apetraka mifanaraka amin'ny .form-check.
Milahatra
Vondrona boaty na radio amin'ny andalana marindrano mitovy amin'ny fanampiana .form-check-inlineamin'ny .form-check.
Tsy misy etikety
Ampio .position-staticamin'ny fampidirana ao anatiny .form-checkizay tsy misy soratra misy marika. Tsarovy fa mbola manome endrika marika ho an'ny teknolojia manampy (ohatra, ny fampiasana aria-label).
fisehon'ny
Koa satria mihatra ny Bootstrap display: blockary width: 100%saika amin'ny fanaraha-maso ny endrika rehetra, dia mitsangana mitsangana ny endrika. Ny kilasy fanampiny dia azo ampiasaina hanovana an'io lamina io amin'ny endrika isan-karazany.
Manaova vondrona
Ny .form-groupkilasy no fomba mora indrindra hanampiana rafitra sasany amin'ny endrika. Izy io dia manome kilasy miovaova izay mamporisika ny fanakambanana etikety araka ny tokony ho izy, ny fanaraha-maso, ny lahatsoratra fanampiana azo atao, ary ny fandefasana hafatra fanamarinana. Amin'ny alàlan'ny default dia mihatra fotsiny izy io margin-bottom, fa maka endrika fanampiny .form-inlineraha ilaina izany. Ampiasao miaraka amin'ny <fieldset>s, <div>s, na saika singa hafa.
Form grid
Ny endrika sarotra kokoa dia azo amboarina amin'ny alàlan'ny kilasin'ny grid. Ampiasao ireo ho an'ny famolavolana endrika izay mitaky tsanganana maro, sakany isan-karazany ary safidy fampifanarahana fanampiny.
Laharana endrika
Azonao atao ihany koa ny manakalo .rowamin'ny .form-row, fiovaovan'ny tsipika manara-penitra izay manafoana ny tatatra tsanganana mahazatra ho an'ny fisehon'ny tery kokoa sy mirindra kokoa.
Mamorona endrika marindrano miaraka amin'ny grid amin'ny alàlan'ny fampidirana ny .rowkilasy hamorona vondrona ary ampiasao ireo .col-*-*kilasy mba hamaritana ny sakan'ny marika sy ny fanaraha-maso. Ataovy azo antoka ny manampy .col-form-labelny <label>s anao koa mba hiorenan'izy ireo mitsangana miaraka amin'ny fanaraha-maso ny endrika mifandray aminy.
Indraindray, mety mila mampiasa margin na fitaovana padding ianao mba hamoronana ny fampifanarahana tonga lafatra ilainao. Ohatra, nesorinay ny padding-topmari-pamantarana fampidiran-dresaka amin'ny onjam-peo mba hampifanaraka tsara ny tsipika fototra.
Famaritana ny mari-pamantarana endrika marindrano
Aza hadino ny mampiasa .col-form-label-smna .col-form-label-lgamin'ny <label>s na ny anao <legend>mba hanaraka tsara ny haben'ny .form-control-lgsy .form-control-sm.
Fametrahana tsanganana
Araka ny asehon'ireo ohatra teo aloha, ny rafitra grid dia ahafahanao mametraka isa maromaro ao .colanatin'ny a .rowna .form-row. Hozarainy mitovy amin'izy ireo ny sakany misy. Azonao atao ihany koa ny misafidy ny ampahany amin'ny tsangananao mba haka toerana bebe kokoa na latsaka, fa ny ambiny kosa .coldia mizara ny ambiny, miaraka amin'ny kilasy tsanganana manokana toy ny .col-7.
Auto-sizing
Ny ohatra eto ambany dia mampiasa fampiasa flexbox mba hampifantohana mitsangana ny atiny sy hanova .colazy .col-automba tsy haka toerana betsaka araka izay ilaina ihany ny tsangananao. Raha lazaina amin'ny teny hafa, ny haben'ny tsanganana dia miankina amin'ny atiny.
Ampiasao ny .form-inlinekilasy hanehoana marika maromaro, fanaraha-maso endrika, ary bokotra amin'ny laharana marindrano iray. Ny fanaraha-maso ny endrika ao anatin'ny endrika an-tsoratra dia miovaova kely amin'ny toetry ny default.
Ny fanaraha-maso dia display: flex, mampirodana ny habaka fotsy HTML rehetra ary mamela anao hanome fifehezana fampifanarahana amin'ny fampitaovana sy flexbox .
Ny vondrona fanaraha-maso sy ny fampidirana dia mahazo manaisotra width: autony default Bootstrap width: 100%.
Ny fanaraha- maso dia miseho an-tserasera fotsiny amin'ny seranan-tsambo izay 576px fara fahakeliny ny sakany mba hahitana ny seranan-tsambo tery amin'ny fitaovana finday.
Mety ilainao ny miresaka amin'ny tanana ny sakany sy ny fampifanarahana ny fanaraha-mason'ny endrika tsirairay miaraka amin'ny fitaovana fanasarahana (araka ny aseho etsy ambany). Farany, aoka ho azo antoka ny hampiditra foana ny <label>fanaraha-maso ny endrika tsirairay, na dia mila manafina izany amin'ireo mpitsidika tsy mpamaky efijery miaraka amin'ny .sr-only.
Tohanana ihany koa ny fanaraha-maso sy fifantenana endrika manokana.
Alternatives amin'ny labels miafina
Ny teknolojia manampy toy ny mpamaky efijery dia hanana olana amin'ny lasitranao raha tsy mampiditra marika ho an'ny fidirana rehetra ianao. Ho an'ireo endrika an-tsoratra ireo dia azonao atao ny manafina ireo etikety amin'ny fampiasana ny .sr-onlykilasy. Misy fomba hafa hafa amin'ny fanomezana marika ho an'ny teknolojia manampy, toy ny aria-label, aria-labelledbyna titletoetra. Raha tsy misy amin'ireo, ny teknolojia mpanampy dia mety hampiasa ny placeholdertoetra, raha misy, saingy mariho fa ny fampiasana placeholderho solon'ny fomba fametahana marika hafa dia tsy soso-kevitra.
Lahatsoratra fanampiana
Ny lahatsoratra fanampiana amin'ny ambaratonga sakana dia azo noforonina amin'ny fampiasana .form-text(fantatra taloha hoe .help-blockamin'ny v3). Ny lahatsoratra fanampiana an-tserasera dia azo ampiharina amin'ny fomba mora ampiasaina amin'ny alàlan'ny singa HTML an-tserasera sy kilasy ilaina toy ny .text-muted.
Ampifandraiso amin'ny fanaraha-maso ny endrika
Ny lahatsoratra fanampiana dia tokony ampifandraisina mazava amin'ny fifehezana endrika mifandraika amin'ny fampiasana ilay aria-describedbytoetra. Izany dia hiantoka fa ny teknolojia manampy — toy ny mpamaky efijery — dia hanambara ity lahatsoratra fanampiana ity rehefa mifantoka na miditra amin'ny fanaraha-maso ny mpampiasa.
Ny lahatsoratra fanampiana eto ambany dia azo asiana endrika miaraka amin'ny .form-text. Ity kilasy ity dia ahitana display: blocksy manampy sisiny ambony ho mora ny elanelana avy amin'ireo fidirana etsy ambony.
Tsy maintsy tarehintsoratra 8-20 ny halavan'ny tenimiafinao, misy litera sy isa, ary tsy tokony hisy habaka, tarehintsoratra manokana, na emoji.
Ny lahatsoratra an-tsoratra dia afaka mampiasa izay singa HTML an-tsoratra mahazatra (na <small>, <span>, na zavatra hafa) tsy misy afa-tsy kilasy fampiasa.
Endrika kilemaina
Ampio ny disabledtoetra boolean amin'ny fampidirana iray mba hisorohana ny fifandraisan'ny mpampiasa sy hahatonga azy ho maivana kokoa.
Ampio ny disabledtoetra amin'ny a <fieldset>hanalana ny fanaraha-maso rehetra ao anatiny.
Azafady miaraka amin'ny vatofantsika
Amin'ny alàlan'ny default, ny mpitety tranonkala dia hitondra ny fanaraha-maso ny endriky ny teratany rehetra ( <input>, <select>sy ny <button>singa) ao anatin'ny ho <fieldset disabled>toy ny kilemaina, manakana ny fifandraisan'ny klavier sy ny totozy eo aminy. Na izany aza, raha misy <a ... class="btn btn-*">singa ihany koa ny endrikao, dia homena style of pointer-events: none. Araka ny nomarihina tao amin'ny fizarana momba ny toetry ny kilema ho an'ny bokotra (ary indrindra ao amin'ny fizarana ho an'ny singa vatofantsika), ity fananana CSS ity dia tsy mbola manara-penitra ary tsy tohanana tanteraka ao amin'ny Internet Explorer 10, ary tsy manakana ny mpampiasa klavier tsy ho lasa. afaka mampifantoka na manetsika ireo rohy ireo. Noho izany, mba ho azo antoka, mampiasa JavaScript manokana hanaisotra ny rohy toy izany.
Mifanaraka amin'ny navigateur
Raha hampihatra ireo fomba ireo amin'ny navigateur rehetra i Bootstrap, ny Internet Explorer 11 sy ambany dia tsy manohana tanteraka ny disabledtoetra amin'ny <fieldset>. Mampiasà JavaScript manokana hanesorana ny saha ao amin'ireo mpitety tranonkala ireo.
Toy izao ny fomba fiasan'ny validation amin'ny Bootstrap:
Ny fanamarinana endrika HTML dia ampiharina amin'ny alàlan'ny pseudo-class roa an'ny CSS, :invalidary :valid. Mihatra amin'ny <input>, <select>, ary <textarea>singa izany.
Ny Bootstrap dia mametaka ny :invalidsy ny :validfomba ho an'ny .was-validatedkilasin'ny ray aman-dreny, matetika ampiharina amin'ny <form>. Raha tsy izany, izay saha ilaina tsy misy sandany dia miseho ho tsy manan-kery amin'ny entana pejy. Amin'izany fomba izany, azonao atao ny misafidy hoe rahoviana no hampavitrika azy ireo (matetika rehefa avy nanandrana ny fandefasana taratasy).
Mba hamerenana ny endriky ny endrika (ohatra, amin'ny fandefasana endrika mavitrika amin'ny fampiasana AJAX), esory ny .was-validatedkilasy <form>indray aorian'ny fandefasana.
Amin'ny maha-famerenana azy, .is-invalidary ny .is-validkilasy dia azo ampiasaina ho solon'ny kilasy pseudo ho an'ny fanamarinana ny lafiny mpizara . Tsy mila .was-validatedkilasy ray aman-dreny izy ireo.
Noho ny faneriterena amin'ny fomba fiasan'ny CSS dia tsy afaka (amin'izao fotoana izao) izahay hampihatra fomba amin'ny endrika iray <label>alohan'ny fifehezana endrika ao amin'ny DOM raha tsy misy ny fanampian'ny JavaScript mahazatra.
Ny navigateur maoderina rehetra dia manohana ny API validation constraint , andiana fomba JavaScript hanamarinana ny fanaraha-maso ny endrika.
Ny hafatra valin- kafatra dia mety hampiasa ny default amin'ny navigateur (samy hafa ho an'ny navigateur tsirairay, ary tsy azo fehezina amin'ny alàlan'ny CSS) na ny fomba fanehoan-kevitra mahazatra misy HTML sy CSS fanampiny.
Azonao atao ny manome hafatra manan-kery manokana setCustomValidityamin'ny JavaScript.
Miaraka amin'izany ao an-tsaina, diniho ireto demo manaraka ireto ho an'ny fomba fanamarinana ny endrika mahazatra, ny kilasin'ny mpizara azo atao, ary ny tsy mety amin'ny navigateur.
Fomba mahazatra
Ho an'ny hafatra fanamarinana ny endrika Bootstrap mahazatra dia mila manampy ny novalidatetoetra boolean amin'ny <form>. Izany dia manafoana ny toro-hevitra momba ny valin-kafatra ho an'ny navigateur, fa mbola manome fidirana amin'ny API fanamarinana endrika amin'ny JavaScript. Andramo ny mandefa ny taratasy eto ambany; ny JavaScript dia hanakana ny bokotra fandefasana ary hampita hevitra aminao. Rehefa manandrana manatitra ianao dia ho hitanao ny fomba :invalidsy ny :validfomba ampiharina amin'ny fanaraha-maso ny endrikao.
Mampihatra loko, sisin-tany, fomba fifantohana, ary kisary ambadika mba hampitana hevitra tsara kokoa ny fomba fanehoan-kevitra manokana. Ny kisary background ho an'ny <select>s dia tsy misy afa-tsy amin'ny .custom-select, fa tsy .form-control.
Ny navigateur default
Tsy liana amin'ny hafatra fanehoan-kevitra momba ny fanamarinana manokana na manoratra JavaScript hanovana fitondran-tena? Tsara daholo, azonao ampiasaina ny default navigateur. Andramo mandefa ny taratasy etsy ambany. Miankina amin'ny navigateur sy ny OS, dia hahita fomba fanehoan-kevitra hafa kely ianao.
Na dia tsy azo atao amin'ny CSS aza ireo fomba fanehoan-kevitra ireo, dia mbola azonao atao ny manamboatra ny lahatsoratra fanehoan-kevitra amin'ny alàlan'ny JavaScript.
Lafiny mpizara
Manoro hevitra izahay hampiasa ny fanamarinana amin'ny lafiny mpanjifa, fa raha toa ka mila fanamarinana amin'ny lafiny server ianao, dia azonao atao ny manondro saha misy endrika tsy mety sy manankery miaraka amin'ny .is-invalidsy .is-valid. Mariho fa .invalid-feedbacktohana ihany koa amin'ireo kilasy ireo.
Singa tohanana
Ny fomba fanamarinana dia misy amin'ireto fanaraha-maso sy singa manaraka ireto:
Raha mamela izany ny fandrafetana endrikao dia azonao atao ny manova ny .{valid|invalid}-feedbackkilasy ho an'ny .{valid|invalid}-tooltipkilasy mba hanehoana valin-kafatra momba ny fanamarinana amin'ny tondro-fitaovana voalamina. Ataovy azo antoka fa manana ray aman-dreny miaraka position: relativeamin'ny fametrahana fitaovana. Ao amin'ny ohatra etsy ambany, ny kilasin'ny tsanganana dia efa manana an'io, fa ny tetikasanao dia mety mitaky fanamboarana hafa.
Customizing
Ny fanjakana fanamarinana dia azo amboarina amin'ny alàlan'ny Sass miaraka amin'ny $form-validation-statessarintany. Ao amin'ny _variables.scssrakitray, ity sari-tany Sass ity dia mihodinkodina mba hamoronana ny fanjakana valid/ invalidfanamarinana. Ao anatin'izany ny sarintany misy akany ho an'ny fanamboarana ny loko sy ny kisary tsirairay avy. Na dia tsy misy fanjakana hafa tohanan'ny mpitety tranonkala aza, ireo mampiasa fomba fanao mahazatra dia afaka manampy mora foana ny fanehoan-kevitra sarotra kokoa.
Azafady, azafady fa tsy manoro hevitra ny manamboatra ireo soatoavina ireo izahay raha tsy manova ny form-validation-statemixin.
Fomba fanao
Ho an'ny fanasokajiana bebe kokoa sy ny tsy fitovian'ny navigateur, ampiasao ny singa endrika mahazatra antsika hanoloana ny default amin'ny navigateur. Izy ireo dia natsangana teo ambonin'ny marika semantika sy azo idirana, noho izany dia fanoloana mafy orina ho an'ny fanaraha-maso ny endrika default.
Boxes sy radios
Ny boaty fisavana sy ny radio <input>ary ny <label>fampiarahana dia nofonosina anaty iray <div>mba hamoronana fanaraha-maso mahazatra. Amin'ny lafiny ara-drafitra, ity dia fomba fiasa mitovy amin'ny default .form-check.
Ampiasainay ny mpifidy mpiray tampo ( ~) ho an'ny <input>fanjakanay rehetra—tahaka ny :checked— mba handrafetana araka ny tokony ho izy ny mari-pamantarana endrika mahazatra. Rehefa ampiarahina amin'ny .custom-control-labelkilasy dia azontsika atao ihany koa ny manamboatra ny lahatsoratra ho an'ny singa tsirairay mifototra amin'ny <input>toetran'ny '.
Afeninay amin'ny <input>alalan'ny opacityfampiasana ny .custom-control-labeldefault ny fanondroana endrika vaovao amin'ny toerany miaraka amin'ny ::beforesy ::after. Indrisy anefa fa tsy afaka manangana fomba amam-panao avy amin'ny fotsiny izahay satria tsy miasa amin'io singa io ny <input>CSS .content
Any amin'ny fanjakana voamarika, mampiasa kisary SVG voarakitra base64 avy amin'ny Open Iconic izahay . Izany dia manome antsika ny fanaraha-maso tsara indrindra amin'ny fanaingoana sy ny fametrahana ny navigateur sy ny fitaovana.
Boxes
Afaka mampiasa ny :indeterminatekilasy pseudo ihany koa ny boaty fisavana manokana rehefa apetraka amin'ny tanana amin'ny alalan'ny JavaScript (tsy misy toetra HTML azo hamaritana azy).
Raha mampiasa jQuery ianao dia ampy ny zavatra toy izao:
Radios
Milahatra
sembana
Mety ho kilemaina ihany koa ny boaty fisavana manokana sy radio. Ampio ny disabledtoetra boolean amin'ny <input>ary ny famantarana manokana sy ny famariparitana marika dia ho voalamina ho azy.
Switches
Ny switch dia manana mari-pamantarana amin'ny boaty fisavana manokana fa mampiasa ny .custom-switchkilasy mba hamoahana switch toggle. Ny switch koa dia manohana ny disabledtoetra.
Safidio ny sakafo
Ny menio manokana <select>dia mila kilasy mahazatra fotsiny, .custom-selectmba hanosehana ny fomba fanao. Ny fomba fanao dia voafetra amin'ny <select>fisehoan'ny voalohany ary tsy afaka manova ny <option>s noho ny fetran'ny navigateur.
Azonao atao ihany koa ny misafidy amin'ny safidy manokana kely sy lehibe mba hifanaraka amin'ny fampidirana lahatsoratra mitovy habe.
Ny multipletoetra koa dia tohana:
Toy ny sizetoetra:
isan-karazany
Mamorona <input type="range">fanaraha-maso manokana amin'ny .custom-range. Ny lalana (ny ambadika) sy ny ankihibe (ny sandany) dia samy novolavolaina mba hiseho mitovy amin'ny navigateur. Satria ny IE sy Firefox ihany no manohana ny "famenoana" ny dian-dry zareo avy eo ankavia na havanana amin'ny ankihibe ho fitaovana hanehoana ny fandrosoana, dia tsy manohana izany izahay amin'izao fotoana izao.
Ny fampidirana isan-karazany dia manana soatoavina implicit ho an'ny minsy max— 0ary 100, tsirairay avy. Azonao atao ny mamaritra ny soatoavina vaovao ho an'ireo mampiasa ny minsy ny maxtoetra.
Amin'ny alàlan'ny default, ampidiro ny "snap" amin'ny sanda integer. Raha hanova izany dia azonao atao ny mamaritra stepsanda iray. Ao amin'ny ohatra etsy ambany, dia avo roa heny ny isan'ny dingana amin'ny fampiasana step="0.5".
File browser
Ny plugin atolotra hanentanana ny fampidiran-drakitra manokana: bs-custom-file-input , izany no ampiasainay eto amin'ny dokanay.
Ny fampidirana fisie no tena manjavozavo indrindra amin'ny andiany ary mila JavaScript fanampiny raha te hampifandray azy ireo amin'ny Fisafidianana rakitra azo ampiasaina… sy ny anaran-drakitra voafantina.
Afeninay amin'ny <input>alàlan'ny opacityfametahana ny <label>. Ny bokotra dia noforonina sy napetraka miaraka amin'ny ::after. Farany, ambarantsika ny a widthand heighton the <input>ho an'ny elanelana mety amin'ny atiny manodidina.
Mandika na manamboatra ny tady amin'ny SCSS
Ny :lang()pseudo-class dia ampiasaina ahafahana mandika ny lahatsoratra “Browse” amin'ny fiteny hafa. Amboary na ampio ny fidirana amin'ny $custom-file-textfari-piadidiana Sass miaraka amin'ny tenifototra momba ny fiteny sy tady eo an-toerana. Ny tady anglisy dia azo amboarina amin'ny fomba mitovy. Ohatra, izao no fomba mety hanampiana dikanteny espaniola (ny fehezan-teny amin'ny teny espaniola dia es):
Ity misy lang(es)hetsika momba ny fampidirana rakitra manokana ho an'ny dikanteny espaniola:
Mila mametraka tsara ny fitenin'ny antontan-taratasinao ianao (na ny zana-kazo) mba hampisehoana ny lahatsoratra marina. Azo atao izany amin'ny fampiasana ny langtoetra amin'ny <html>singa na ny Content-Languagelohatenin'ny HTTP , ankoatry ny fomba hafa.
Mandika na manamboatra ny tady amin'ny HTML
Ny Bootstrap koa dia manome fomba handikana ny lahatsoratra "Browse" amin'ny HTML miaraka amin'ny data-browsetoetra izay azo ampidirina amin'ny marika fampidirana manokana (ohatra amin'ny teny holandey):