Ko nga tauira me nga aratohu whakamahi mo nga momo mana whakahaere, nga whiringa tahora, me nga waahanga ritenga mo te hanga i nga momo momo momo.
Tirohanga
Ko nga mana puka a Bootstrap ka whakawhānui ake i runga i o maatau momo ahua kua Whakahoutia me nga karaehe. Whakamahia enei karaehe ki te whakauru ki o raatau whakaaturanga kia rite tonu te whakaputa puta noa i nga kaitirotiro me nga taputapu.
Me mohio ki te whakamahi i tetahi typehuanga e tika ana mo nga whakaurunga katoa (hei tauira, emailmo te wahitau imeera, numbermo nga korero nama ranei) hei whakamahi i nga mana whakauru hou penei i te manatoko imeera, te kowhiringa nama, me etahi atu.
Anei he tauira tere hei whakaatu i nga momo ahua o Bootstrap. Kia mau ki te panui mo nga tuhinga mo nga karaehe e hiahiatia ana, te whakatakotoranga puka, me etahi atu.
Puka mana whakahaere
Ko nga mana kupu kupu—penei <input>i te s, <select>s, me <textarea>te s—he mea whakaahua ki te .form-controlkaraehe. Kei roto ko nga momo ahua mo te ahua whanui, te ahua arotahi, te rahi, me etahi atu.
Kia mohio koe ki te torotoro i a maatau puka ritenga ki etahi atu momo <select>s.
Mo nga whakaurunga konae, whakawhitia te .form-controlmo .form-control-file.
Te rahinga
Tautuhi teitei ma te whakamahi i nga karaehe penei .form-control-lgme te .form-control-sm.
Panui anake
Tāpirihia te readonlyhuanga boolean ki runga i te whakaurunga hei aukati i te whakarereketanga o te uara o te whakauru. Ko nga whakauru panui-anake ka ngawari ake (penei i nga whakaurunga haua), engari ka mau tonu te pehu paerewa.
Panui anake te kuputuhi tokau
Mena kei te pirangi koe kia <input readonly>tapaina nga huānga o to ahua hei kupu tuhi noa, whakamahia te .form-control-plaintextkaraehe ki te tango i te ahua o te mara puka taunoa me te pupuri i te tawhē tika me te papa.
Nga Whakauru Awhe
Tautuhia nga whakaurunga awhe ka taea te panuku whakapae ma te whakamahi .form-control-range.
Pouakataki me nga reo irirangi
Ko nga pouakataki taunoa me nga reo irirangi ka whakapai ake ma te awhina o .form-check, he karaehe kotahi mo nga momo whakauru e rua hei whakapai ake i te whakatakotoranga me te whanonga o a raatau huānga HTML . Ko nga pouakataki mo te kowhiri i tetahi, maha ranei nga whiringa i roto i te rarangi, ko nga reo irirangi hei kowhiri i tetahi waahanga mai i te maha.
Ka tautokohia nga pouakataki haua me nga reo irirangi. Ko te disabledhuanga ka hoatu he tae mama ake hei tohu i te ahua o te whakaurunga.
Ko nga pouakataki me nga paatene reo irirangi e tautoko ana i te whakamanatanga o te puka HTML me te whakarato tapanga poto, e waatea ana. No reira, ko o tatou <input>s me o tatou <label>he huānga teina he rereke ki te <input>roto a <label>. He paku noa ake tenei na te mea me tohu koe idme nga forhuanga hei hono i te <input>me te <label>.
Taunoa (tāpae)
Ma te taunoa, ko nga maha o nga pouakataki me nga reo irirangi he tuakana tonu ka tapae poutū me te mokowhiti tika ki te .form-check.
Raina
Whakarōpū pouakataki, reo irirangi ranei i runga i te rarangi whakapae kotahi ma te taapiri .form-check-inlineki tetahi .form-check.
Karekau he tapanga
Taapirihia .position-staticki nga whakaurunga kei roto karekau .form-checkhe kupu tapanga. Kia mahara ki te whakarato tonu i etahi momo tapanga mo nga hangarau awhina (hei tauira, te whakamahi aria-label).
Tahora
I te mea e pa ana a Bootstrap display: blockme width: 100%te tata ki te katoa o o maatau mana puka, ka taunoa te tapae poutū nga puka. Ka taea te whakamahi i etahi atu karaehe hei whakarereke i tenei tahora i runga i te ahua o ia ahua.
Whakaritehia nga roopu
Ko te .form-groupkaraehe te huarahi ngawari ki te taapiri i etahi hanganga ki nga puka. E whakarato ana i te karaehe ngawari e akiaki ana i te whakarōpūtanga tika o nga tapanga, nga mana whakahaere, nga kupu awhina awhina, me te whakaputa karere whakamana. Ma te taunoa ka pa anake margin-bottom, engari ka kohia e ia etahi momo taapiri .form-inlineina hiahiatia. Whakamahia me <fieldset>te s, <div>s, me etahi atu huānga.
Matiti puka
Ka taea te hanga i nga puka uaua ake ma te whakamahi i o maatau akomanga matiti. Whakamahia enei mo nga whakatakotoranga puka e hiahia ana kia maha nga pou, nga whanui rereke, me etahi atu whiringa whakatika.
Puka rarangi
Ka taea hoki e koe te huri .rowmo .form-rowte , he rereke o to maatau rarangi matiti paerewa e takahi ana i nga awaawa o te pou taunoa mo nga whakatakotoranga kikii ake.
Ka taea hoki te hanga tahora uaua ake me te punaha matiti.
Puka whakapae
Waihangahia nga puka whakapae me te matiti ma te taapiri i te .rowkaraehe ki te hanga roopu me te whakamahi i nga .col-*-*karaehe hei tohu i te whanui o o tapanga me o mana whakahaere. Kia mahara ki te taapiri atu .col-form-labelki o <label>s kia noho poutū ki roto i o raatau mana whakahaere ahua.
I etahi wa, ka hiahia pea koe ki te whakamahi i nga taputapu tawhē, papaa ranei hei hanga i taua tirohanga tino tika e hiahia ana koe. Hei tauira, kua tangohia e padding-topmatou te tapanga whakaurunga reo irirangi kei runga i a matou kia pai ake ai te whakahāngai i te raarangi kuputuhi.
Te rahinga tapanga puka whakapae
Me mohio ki te whakamahi .col-form-label-sm, .col-form-label-lgki to <label>s ranei <legend>ki te whai tika i te rahi o .form-control-lgme .form-control-sm.
Rahinga tīwae
Ka rite ki te whakaatu i nga tauira o mua, ka taea e ta maatau punaha matiti te whakauru i nga maha o .colnga s ki roto i .rowte .form-row. Ka wehewehea te whanui e waatea ana ki waenga i a raatau. Ka taea ano e koe te kowhiri i tetahi waahanga o o pou kia nui ake, iti ake ranei te mokowā, ko te toenga .colka wehewehea te toenga, me nga karaehe pou motuhake penei i te .col-7.
Rahi-aunoa
Ko te tauira i raro nei e whakamahi ana i te whaipainga flexbox ki te whakakokohu poutū i nga ihirangi me nga huringa .colkia .col-autonui noa atu te mokowhiti i o pou ina hiahiatia. Me korero ano, ko te rahi o te pou i runga ano i nga ihirangi.
Ka taea e koe te whakakotahi ano i tera me nga karaehe pou motuhake.
Whakamahia te .form-inlinekaraehe ki te whakaatu i te raupapa o nga tapanga, nga mana puka, me nga paatene i runga i te rarangi whakapae kotahi. He rereke te ahua o nga mana o roto i nga puka raina mai i o raatau ahuatanga taunoa.
Ko nga mana whakahaere display: flex, ko te tiango i tetahi mokowā ma HTML me te tuku i a koe ki te whakarato i te mana tīaroaro me nga taputapu mokowā me te pouaka flexbox .
Ka whiwhi nga mana whakahaere me nga roopu whakauru width: autoki te whakakore i te Bootstrap taunoa width: 100%.
Ka puta mai nga mana ki roto i nga tauranga tiro he 576px te whanui hei whakaatu mo nga tauranga whaiti i runga i nga taputapu pūkoro.
Ka hiahia pea koe ki te whakatika a-ringa i te whanui me te tirohanga o nga mana puka takitahi me nga taputapu mokowhiti (penei i raro nei). Ka mutu, kia mau tonu te whakauru a <label>ki ia mana puka, ahakoa me huna e koe mai i nga manuhiri kaipanui-kore me te .sr-only.
Ka tautokohia nga mana whakahaere me nga kowhiringa ritenga.
He rereke ki nga tapanga huna
Ko nga hangarau awhina penei i nga kaipanui mata ka raru ki o puka mena kaore koe e whakauru i tetahi tapanga mo ia whakaurunga. Mo enei puka-roto, ka taea e koe te huna i nga tapanga ma te whakamahi i te .sr-onlyakomanga. He huarahi ke atu ano mo te whakarato tapanga mo nga hangarau awhina, penei i te aria-label, huanga aria-labelledbyranei . titleMena karekau tetahi o enei, ka taea e nga hangarau awhina te whakamahi i te placeholderhuanga, mena kei reira, engari me mahara ko te whakamahi placeholderhei whakakapi mo etahi atu tikanga tapanga kaore i te tohutohuhia.
Kupu awhina
Ka taea te hanga kupu awhina taumata-poraka i roto i nga puka ma te whakamahi .form-text(i mohiotia i mua .help-blocki te v3). Ka taea te whakamahi i nga kupu awhina roraina ma te whakamahi i tetahi huānga HTML roraina me nga karaehe whaipainga penei .text-muted.
Te hono kupu awhina me nga mana puka
Ko te kupu awhina me tino hono ki te mana puka e pa ana ki te whakamahi i te aria-describedbyhuanga. Ma tenei ka whakarite ko nga hangarau awhina—penei i nga kaipanui mata—ka panui i tenei tuhinga awhina ina aro te kaiwhakamahi, ka uru ranei ki te mana whakahaere.
Ko te kupu awhina kei raro i nga whakaurunga ka taea te whakaahua ki te .form-text. Kei roto i tenei karaehe display: blockme te taapiri i etahi tawhē runga kia ngawari te mokowhiti mai i nga whakaurunga o runga.
Me 8-20 te roa o to kupuhipa, kei roto nga reta me nga nama, me kaua e whai waahi, tohu motuhake, emoji ranei.
Ka taea e te kuputuhi roraina te whakamahi i tetahi huānga HTML rōraina (ahakoa he <small>, <span>, he aha atu ranei) engari he akomanga whaipainga.
Puka monokia
Tāpirihia te disabledhuanga boolean ki runga i te whakaurunga hei aukati i nga taunekeneke a nga kaiwhakamahi me te ahua mama ake.
Tāpirihia te disabledhuanga ki a <fieldset>hei mono i nga mana katoa o roto.
Whakapae me nga punga
Ma te taunoa, ka whakatauhia e nga kaitirotiro nga mana ahua taketake katoa ( <input>, <select>me <button>nga huānga) i roto i te he <fieldset disabled>kua monokia, ka aukati i nga taunekeneke papapātuhi me te kiore ki runga. Heoi, mena kei roto ano i to ahua nga <a ... class="btn btn-*">huānga, ka hoatu he momo pointer-events: none. Ka rite ki te korero i roto i te waahanga mo te ahua haua mo nga paatene (me te waahanga iti mo nga huānga punga), ko tenei taonga CSS kaore ano kia whakatauritehia, kaore ano kia tino tautokona i roto i te Internet Explorer 10, kare hoki e aukati i nga kaiwhakamahi papapātuhi. ka taea te arotahi, te whakahohe ranei i enei hononga. Na kia noho haumaru, whakamahia JavaScript ritenga ki te whakakore i aua hononga.
Hototahitanga whakawhiti-tirotiro
Ahakoa ka hoatu e Bootstrap enei momo ki nga kaitirotiro katoa, kaore a Internet Explorer 11 me raro iho e tautoko i te disabledhuanga i runga i te <fieldset>. Whakamahia te JavaScript ritenga hei whakakore i te huinga mara i roto i enei kaitirotiro.
Whakamana
Homai he urupare utu nui, mahi ki o kaiwhakamahi me te whakamana puka HTML5– e waatea ana i o maatau tirotiro tirotiro katoa . Whiriwhiria mai i nga urupare whakamanatanga taunoa o te kaitirotiro, te whakamahi ranei i nga karere ritenga me o maatau karaehe whakauru me te JavaScript timata.
I tenei wa ka tūtohu matou ki te whakamahi i nga momo whakamanatanga ritenga, i te mea karekau nga karere whakamanatanga taunoa o te kaitirotiro taketake e puta ki nga hangarau awhina i roto i nga kaitirotiro katoa (te nuinga, ko Chrome i runga i te papamahi me te pūkoro).
Pehea te mahi
Anei te mahi whakamana puka me Bootstrap:
Ko te whakamana puka HTML ka whakamahia ma nga akomanga pseudo e rua a CSS, :invalidme te :valid. Ka pa ki te <input>, <select>, me <textarea>nga huānga.
Ka horahia e Bootstrap nga momo :invalidme :validnga momo ki te .was-validatedakomanga matua, ka whakamahia ki te <form>. Ki te kore, ko nga mara e hiahiatia ana kaore he uara ka kitea he muhu i runga i te utaina wharangi. Ma tenei ara, ka taea e koe te whiriwhiri i te wa e whakahohehia ai (te nuinga i muri i te nganatanga o te tuku puka).
Hei tautuhi i te ahua o te puka (hei tauira, mo te tukunga puka hihiri ma te whakamahi i te AJAX), tangohia te .was-validatedkaraehe mai i te <form>reanga i muri i te tukunga.
Hei whakamuri, ka whakamahia .is-invalidpea .is-validnga karaehe hei utu mo nga karaehe pseudo mo te whakamana i te taha tūmau . Kaore e hiahiatia he .was-validatedakomanga matua.
Na nga herenga o te mahi a CSS, kaore e taea e matou (i tenei wa) te whakamahi i nga momo ki tetahi <label>ka puta mai i mua i te mana o te puka i roto i te DOM kaore he awhina a JavaScript.
Ka tautoko nga kaitirotiro hou katoa i te API whakamana herenga , he raupapa o nga tikanga JavaScript mo te whakamana i nga mana puka.
Ka taea e nga karere urupare te whakamahi i nga taunoa o te kaitirotiro (he rereke mo ia kaitirotiro, me te kore e taea te tuhi ma te CSS) me o maatau momo urupare me etahi atu HTML me CSS.
Ka taea e koe te tuku karere whaimana ritenga ki setCustomValidityroto i te JavaScript.
Ma te mahara ki tera, whakaarohia nga whakaaturanga e whai ake nei mo o maatau momo whakapumautanga puka ritenga, nga karaehe taha tuumau, me nga hapa tirotiro.
Nga momo ritenga
Mo nga karere whakamana puka Bootstrap ritenga, me taapiri koe i te novalidatehuanga boolean ki to <form>. Ka mono tenei i nga aki taputapu urupare taunoa, engari ka uru tonu ki nga API whakamana puka i roto i te JavaScript. Ngana ki te tuku i te puka kei raro nei; ka haukotia e ta maatau JavaScript te paatene tuku me te tuku urupare ki a koe. I te wa e ngana ana ki te tuku, ka kite koe i nga momo :invalidme :validnga momo e pa ana ki o mana puka.
Ka whakamahia e nga momo urupare ritenga nga tae ritenga, nga taitapa, nga momo arotahi, me nga tohu papamuri kia pai ake ai te korero urupare. Ko nga tohu papamuri mo <select>s kei te waatea noa me te .custom-select, kaore .form-control.
Pūtirotiro taunoa
Kaore koe e aro ki nga karere urupare whakamana ritenga, ki te tuhi JavaScript ranei hei whakarereke i nga whanonga puka? He pai katoa, ka taea e koe te whakamahi i nga taunoa pūtirotiro. Whakamātauria te tuku i te puka kei raro nei. I runga i to kaitirotiro me to OS, ka kite koe i te ahua rereke o te urupare.
Ahakoa e kore e taea te whakaahua enei momo urupare ki te CSS, ka taea tonu e koe te whakarite i te tuhinga urupare ma te JavaScript.
Te taha tūmau
Ka tūtohu matou ki te whakamahi i te whakamanatanga taha-kiritaki, engari ki te hiahia koe ki te whakamana i te taha-tumau, ka taea e koe te tohu i nga waahanga puka muhu me te whaimana .is-invalidme te .is-valid. Kia mahara kei .invalid-feedbackte tautokohia ano e enei akomanga.
Huānga tautoko
E waatea ana nga momo whakamana mo nga mana me nga waahanga e whai ake nei:
<input>s me <textarea>s me .form-control(tae atu ki te kotahi .form-controli roto i nga roopu whakauru)
<select>s me .form-controlranei.custom-select
.form-checks
.custom-checkboxs me .custom-radios
.custom-file
Aki taputapu
Mena ka whakaaetia e to tahora puka, ka taea e koe te huri i nga .{valid|invalid}-feedbackkaraehe mo .{valid|invalid}-tooltipnga karaehe hei whakaatu i nga urupare whakamana i roto i te aki taputapu kua tohua. Me mohio he matua kei position: relativerunga mo te whakatakotoranga taputapu. I roto i te tauira i raro nei, kei a maatau akomanga pou tenei, engari ka hiahia pea to kaupapa ki tetahi tatūnga rereke.
Whakaritea
Ko nga ahuatanga whakamana ka taea te whakarite ma te Sass me te $form-validation-statesmapi. Kei roto i ta maatau _variables.scsskonae, ka hurihia tenei mapi Sass ki te whakaputa i nga ahuatanga taunoa valid/ whakamanatanga. invalidKei roto ko te mapi kohanga hei whakarite i nga tae me nga tohu o ia kawanatanga. Ahakoa kaore etahi atu whenua e tautokohia ana e nga kaitirotiro, ka taea e te hunga e whakamahi ana i nga momo ritenga te taapiri i nga urupare puka uaua ake.
Kia mahara kaore matou e kii ki te whakarite i enei uara me te kore e whakarereke i te form-validation-stateranunga.
Puka ritenga
Mo etahi atu whakaritenga me te riterite o te tirotiro tirotiro, whakamahia a maatau huānga puka ritenga hei whakakapi i nga hapa o te tirotiro. He mea hanga ki runga ake o te tohu tohu korero me te waatea, na reira he tino whakakapinga mo tetahi mana puka taunoa.
Pouakataki me nga reo irirangi
Ko ia pouakataki me te reo irirangi <input>me <label>te takirua ka takai ki roto <div>ki te hanga i to maatau mana whakahaere. Ko te hanganga, he rite tonu te huarahi ki ta maatau taunoa .form-check.
Ka whakamahia e matou te kaiwhiri teina ( ~) mo o maatau <input>whenua katoa—penei i a—ki :checkedte hanga tika i to maatau tohu tohu ritenga. Ka honoa ki te .custom-control-labelkaraehe, ka taea hoki te whakaahua i te tuhinga mo ia mea i runga i te <input>ahua o te ahua.
Ka huna e matou te taunoa <input>me opacityte whakamahi i te .custom-control-labelhei hanga tohu tohu ahua hou ki tona waahi me ::beforete ::after. Kia aroha mai, kare e taea e matou te hanga i tetahi ritenga mai i te <input>mea karekau a CSS contente mahi ki tera huānga.
I roto i nga ahua kua tohua, ka whakamahia e matou nga tohu SVG kua whakauruhia ki te base64 mai i Open Iconic . Ma tenei ka whai mana pai ki a maatau te whakaahua me te tuunga puta noa i nga kaitirotiro me nga taputapu.
Pouakataki
Ka taea hoki e nga pouakataki ritenga te whakamahi i te :indeterminatekaraehe pseudo ina tautuhia ma te JavaScript (kaore he huanga HTML e waatea ana hei tohu).
Mena kei te whakamahi koe i te jQuery, penei me penei:
Nga reo irirangi
Raina
Kua haua
Ka taea hoki te whakakore i nga pouakataki me nga reo irirangi. Tāpirihia te disabledhuanga boolean ki te <input>, ka whakaingoatia te tohu ritenga me te whakaahuatanga tapanga.
Whakawhiti
Kei roto i te pana te tohu o te pouakataki ritenga engari ka whakamahi i te .custom-switchkaraehe ki te whakaputa i te pana takahuri. Ka tautokohia e nga huringa te disabledhuanga.
Tīpakohia te tahua
<select>Ko nga tahua ritenga he karaehe ritenga anake, hei .custom-selectwhakaoho i nga momo ritenga. Ko nga momo ritenga kua whakawhäitihia ki te <select>ahua tuatahi o te ahua, a, kaore e taea te whakarereke i nga <option>s i runga i nga herenga tirotiro.
Ka taea ano e koe te whiriwhiri mai i nga kowhiringa ritenga iti me te rahi kia rite ki o maatau whakaurunga kuputuhi rite te rahi.
Ka multipletautokohia te huanga:
Ko te sizehuanga:
Awhe
Waihangahia nga <input type="range">mana ritenga me te .custom-range. Ko te ara (te papamuri) me te koromatua (te uara) he mea hanga kia rite te ahua puta noa i nga kaitirotiro. I te mea ko IE me Firefox anake te tautoko i te "whakakii" i o raatau ara mai i te taha maui, i te taha matau ranei o te koromatua hei huarahi ki te whakaatu i te ahunga whakamua, kaore matou e tautoko i tenei wa.
Ko nga whakaurunga awhe he uara whakaraerae mo minte max- 0me te 100, ia. Ka taea e koe te tautuhi i nga uara hou mo te hunga e whakamahi ana i te minme nga maxhuanga.
Ma te taunoa, ka "kapo" nga whakaurunga awhe ki nga uara tauoti. Hei huri i tenei, ka taea e koe te tautuhi i tetahi stepuara. I roto i te tauira i raro nei, ka whakaruaruatia te maha o nga hikoinga ma te whakamahi step="0.5".
Pūtirotiro kōnae
Ko te monomai e taunakitia ana hei whakakorikori i te whakaurunga konae ritenga: bs-custom-file-input , koinei te mea e whakamahia ana e matou i konei i roto i o maatau tuhinga.
Ko te whakaurunga o te konae te mea tino pukuriri o te paihere me te hiahia JavaScript taapiri mena ka pirangi koe ki te hono i a raatau ki te mahi Whiriwhiria te konae… me te tuhinga ingoa konae kua tohua.
Ka hunahia e matou te konae taunoa <input>ma opacityte ahua o te <label>. Ka hangaia te paatene me te whakanoho ki te ::after. Ka mutu, ka whakapuakihia e matou he widthmokowhiti tika mo nga ihirangi huri noa height.<input>
Te whakamaori, te whakarite ranei i nga aho ki te SCSS
Ka whakamahia :lang()te karaehe pseudo kia taea ai te whakamaoritanga o te tuhinga "Tirotiro" ki etahi atu reo. Whakakorehia, taapirihia ranei nga urunga ki te $custom-file-texttaurangi Sass me te tohu reo e tika ana me nga aho paetata. Ko nga aho Ingarihi ka taea te whakarite i te ara ano. Hei tauira, me pehea te taapiri i te whakamaoritanga Paniora (Ko te waehere reo Paniora ko es):
Anei e lang(es)mahi ana mo te whakaurunga konae ritenga mo te whakamaoritanga Paniora:
Me whakarite tika koe i te reo o to tuhinga (te rakau iti ranei) kia tika ai te whakaatu i nga tuhinga tika. Ka taea tenei ma te whakamahi i te langhuanga i runga i te <html>huānga, i te Content-Languagepane HTTP ranei , me etahi atu tikanga.
Te whakamaori, te whakarite ranei i nga aho ki te HTML
Ka whakarato hoki a Bootstrap i tetahi huarahi ki te whakamaori i te tuhinga "Tirotiro" ki te HTML me te data-browsehuanga ka taea te taapiri atu ki te tapanga whakauru ritenga (tauira i te reo Tatimana):