Theming Bootstrap
Ku beddel Bootstrap 4 oo leh doorsoomayaal Sass-ku-dhismay oo cusub oo loogu talagalay doorbidyada qaabka caalamiga ah ee isbeddellada fudud ee mawduucyada iyo qaybaha.
Bootstrap 3, mawduuca waxaa si weyn u dhaqaajiyay isbeddellada isbeddelka ee LESS, CSS caadada ah, iyo xaashi mawduuc gaar ah oo aan ku darnay dist
faylalkayaga. Dadaalka qaar, mid ayaa gabi ahaanba dib u habeyn kara muuqaalka Bootstrap 3 isaga oo aan taaban faylasha asaasiga ah. Bootstrap 4 wuxuu bixiyaa hab la yaqaan, laakiin wax yar ka duwan.
Hadda, mawduuca waxa lagu dhammeeyaa doorsoomayaasha Sass, maabka Sass, iyo CSS caadada ah. Ma jiro xaashi mawduuceed dheeraad ah oo go'an; bedelkeeda, waxaad awood u siin kartaa dulucda ku dhex jirta inay ku darto gradients, hadh, iyo in ka badan.
Ka faa'iidayso ishayada faylasha Sass si aad uga faa'iidaysato doorsoomayaasha, khariidado, isku darka, iyo in ka badan.
Mar kasta oo ay suurtagal tahay, iska ilaali inaad wax ka beddesho Bootstrap's faylasha xudunta u ah. Dhanka Sass, taasi waxay la macno tahay abuurista xaashida qaabkaaga oo soo dejisa Bootstrap si aad wax uga beddesho oo aad u kordhiso. Haddii aad u malaynayso inaad isticmaalayso maareeyaha xirmada sida npm, waxaad yeelan doontaa qaab dhismeedka faylka oo sidan u eg:
Haddii aad soo dejisay faylalkayaga isha oo aanad isticmaalayn maareeyaha xirmada, waxaad u baahan doontaa inaad gacanta ku dejiso wax la mid ah qaab-dhismeedkaas, adigoo ka ilaalinaya faylalka isha Bootstrap ee ka duwan kuwaaga.
Gudahaaga custom.scss
, waxaad ku soo dejisan doontaa isha Bootstrap ee faylasha Sass. Waxaad haysataa laba ikhtiyaar: ku dar dhammaan Bootstrap, ama dooro qaybaha aad u baahan tahay. Waxaan dhiirigelineynaa kuwa dambe, inkastoo la soco inay jiraan shuruudo iyo ku-tiirsanaanta qaybahayada. Waxa kale oo aad u baahan doontaa inaad ku darto qaar ka mid ah JavaScript ee pluginsyadayada.
Iyada oo habayntaas meesha taal, waxaad bilaabi kartaa inaad wax ka beddesho doorsoomayaasha Sass iyo maabka kaaga custom.scss
. Waxa kale oo aad bilaabi kartaa in aad ku darto qaybo ka mid ah Bootstrap // Optional
qaybta hoos timaada hadba sida loogu baahdo. Waxaan kugula talineynaa inaad isticmaasho xirmada soo dejinta ee buuxa ee galkayaga si ay uga bootstrap.scss
noqoto bartaada.
Doorsoome kasta oo Sass ah oo ku jira Bootstrap 4 waxa ku jira !default
calanka kuu oggolaanaya inaad ka gudubto doorsoomaha qiimahiisa caadiga ah ee Sass-kaaga adiga oo aan wax ka beddelin koodhka isha Bootstrap. Nuqul oo dheji doorsoomayaasha hadba sida loo baahdo, wax ka beddel qiyamkooda, oo ka saar !default
calanka. Haddii doorsoome hore loo qoondeeyay, markaa dib looma meelayn doono qiyamka caadiga ah ee Bootstrap.
Waxaad ka heli doontaa liiska dhamaystiran ee doorsoomayaasha Bootstrap scss/_variables.scss
.
Burburinta kala duwan ee isla faylka Sass waxay iman karaan kahor ama kadib doorsoomayaasha caadiga ah. Si kastaba ha ahaatee, marka aad ka gudubto dhammaan faylasha Sass, tirtiristaadu waa inay yimaadaan ka hor intaadan soo dejin Bootstrap's Sass faylasha.
Waa kan tusaale beddela kan iyo background-color
marka la soo dejinayo oo la ururinayo Bootstrap iyada oo la adeegsanayo npm:color
<body>
Ku celi hadba sida lagama maarmaanka u ah doorsoome kasta oo ku jira Bootstrap, oo ay ku jiraan xulashooyinka caalamiga ah ee hoose.
Bootstrap 4 waxa ku jira sacab muggeed oo khariidado Sass ah, lamaane qiimo leh oo fududeeya in la soo saaro qoysaska CSS ee la xidhiidha. Waxaan u isticmaalnaa khariidadaha Sass midabadayada, meelaha jajaban ee xariiqda, iyo in ka badan. Sida doorsoomayaasha Sass, dhammaan khariidadaha Sass waxaa ku jira !default
calanka waana la dhaafi karaa oo la dheerayn karaa.
Qaar ka mid ah khariidadahayada Sass waxay ku milmeen kuwo madhan si caadi ah. Tan waxa loo sameeyaa si loogu oggolaado balaadhinta fudud ee khariidadda Sass ee la bixiyay, laakiin waxay ku timaadaa kharashka samaynta ka saarista walxaha khariidadda waxyar ka sii adag.
Si aad wax uga bedesho midabka jira ee $theme-colors
khariidaddayada, ku dar kuwan soo socda faylkaaga Sass ee caadiga ah:
Si loogu daro midab cusub $theme-colors
, ku dar furaha cusub iyo qiimaha:
Si aad midabada uga saarto $theme-colors
, ama khariidad kasta, isticmaal map-remove
. La soco waa inaad gelisaa inta u dhaxaysa shuruudahayaga iyo ikhtiyaarradayada:
Bootstrap waxay u malaynaysaa joogitaanka qaar ka mid ah furayaasha gaarka ah ee ku jira khariidadaha Sass sidaan u isticmaalnay oo aan u kordhinay nafteena. Markaad habaynayso khariidadaha ku jira, waxaa laga yaabaa inaad la kulanto khaladaad halka furaha khariidadda Sass gaar ah la isticmaalayo.
Tusaale ahaan, waxaan u isticmaalnaa furayaasha primary
, success
, iyo danger
furayaasha laga soo bilaabo $theme-colors
xiriirinta, badhamada, iyo qaabka foomka. Beddelka qiyamka furayaashan waa in aanay soo bandhigin wax arrimo ah, laakiin ka saaristooda waxa ay sababi kartaa arrimo la xidhiidha ururinta Sass. Xaaladahan, waxaad u baahan doontaa inaad wax ka bedesho koodka Sass ee isticmaalaya qiyamkaas.
Bootstrap waxay isticmaashaa dhowr hawlood oo Sass ah, laakiin qayb-hoosaad kaliya ayaa lagu dabaqi karaa dulucda guud. Waxaan ku soo darnay saddex hawlood oo lagu heli karo qiyamka khariidadaha midabka:
Kuwani waxay kuu oggolaanayaan inaad hal midab ka soo qaadato khariidadda Sass si la mid ah sida aad u isticmaali lahayd doorsoomiyaha midabka v3.
Waxa kale oo aanu haynaa shaqo kale oo ah in aan ka helno heer midab gaar ah $theme-colors
khariidada. Qiimaha heerka taban ayaa iftiimin doona midabka, halka heerarka sare ay madoobaan doonaan.
Ficil ahaan, waxaad wici lahayd shaqada oo aad ku gudbi lahayd laba cabbir: magaca midabka $theme-colors
(tusaale, aasaasiga ama khatarta) iyo heerka tirada.
Hawlaha dheeraadka ah ayaa lagu dari karaa mustaqbalka ama caadadaada Sass si aad u abuurto hawlo heer ah khariidadaha Sass dheeraad ah, ama xitaa mid guud haddii aad rabto inaad noqoto mid hadal badan.
Hal shaqo oo dheeri ah oo aan ku darno Bootstrap waa shaqada isbarbardhigga midabka, color-yiq
. Waxay isticmaashaa booska midabka YIQ si ay si toos ah ugu soo celiso iftiinka ( #fff
) ama mugdiga ( #111
) midabka ka duwan ee ku salaysan midabka salka la cayimay. Shaqadani waxay si gaar ah faa'iido u leedahay isku-dhafka ama wareegyada halkaasoo aad ka soo saarayso fasallo badan.
Tusaale ahaan, si aan khariidadeena uga soo saarno $theme-colors
sawiro midab leh:
Waxa kale oo loo isticmaali karaa baahiyaha isbarbardhiga hal mar:
Waxa kale oo aad qeexi kartaa midabka salka leh hawlahayaga khariidada midabka:
Ku beddel Bootstrap 4 oo leh faylkayada doorsoomayaal caadadii ku dhex dhisan oo si fudud ugu beddel dookhyada CSS ee caalamiga ah $enable-*
doorsoomayaal Sass cusub ah. Burburi qiimaha doorsoomaha oo ku celi npm run test
sida loo baahdo.
Waxaad ka heli kartaa oo aad u habayn kartaa doorsoomayaashan xulashooyinka caalamiga ah ee muhiimka ah scss/_variables.scss
faylka Bootstrap.
La beddeli karo | Qiimaha | Sharaxaada |
---|---|---|
$spacer |
1rem (default), ama qiime kasta> 0 |
Wuxuu qeexayaa qiimaha boos-dhaafka ee caadiga ah si uu barnaamij ahaan u soo saaro utility spacer our . |
$enable-rounded |
true (default) amafalse |
Waxay u sahlaysa border-radius qaabab horay loo sii qeexay oo qaybo kala duwan ah. |
$enable-shadows |
true ama false (default) |
Waxay u sahlaysa box-shadow qaabab horay loo sii qeexay oo qaybo kala duwan ah. |
$enable-gradients |
true ama false (default) |
Waxay u sahlaysa jaranjarooyinka horay loo sii qeexay iyadoo loo marayo background-image qaabab qaybo kala duwan ah. |
$enable-transitions |
true (default) amafalse |
Waxay u sahlaysa kuwa hore loo qeexay transition ee qaybo kala duwan. |
$enable-hover-media-query |
true ama false (default) |
Go'ay |
$enable-grid-classes |
true (default) amafalse |
Waxay u sahlaysa jiilka fasalada CSS ee nidaamka grid (tusaale, .container , .row , .col-md-1 iwm.). |
$enable-caret |
true (default) amafalse |
Waxay sahlaysa daryeelka curiyaha been abuurka ah .dropdown-toggle . |
$enable-print-styles |
true (default) amafalse |
Waxay u sahlaysa qaababka hagaajinta daabacaadda. |
Qaar badan oo ka mid ah qaybaha kala duwan ee Bootstrap iyo adeegyada waxaa lagu dhisay midabyo taxane ah oo lagu qeexay khariidadda Sass. Khariidaddan waxa lagu xidhi karaa Sass si loo soo saaro xeerar taxane ah.
Dhammaan midabada laga heli karo Bootstrap 4, waxay diyaar u yihiin doorsoomayaasha Sass iyo khariidadda Sass ee scss/_variables.scss
faylka. Tan waxaa lagu balaadhin doonaa siideynnada yaryar ee soo socda si loogu daro habab dheeraad ah, si la mid ah palette -cawlan ee aan ku darnay.
Waa kuwan sida aad kuwan ugu isticmaali karto Sass-kaaga:
Fasallada utility midabka ayaa sidoo kale diyaar u ah dejinta color
iyo background-color
.
Mustaqbalka, waxaanu higsan doonaa inaanu bixino maab Sass iyo doorsoomayaasha midab kasta sida aanu ku samaynay midabada cawl ee hoose.
Waxaan isticmaalnaa qayb ka mid ah dhammaan midabada si aan u abuurno palette midab yar si loo soo saaro nidaamyada midabka, sidoo kale loo heli karo doorsoomayaasha Sass iyo khariidadda Sass ee scss/_variables.scss
faylka Bootstraps.
Qayb ballaadhan oo doorsoomayaal cawl ah iyo khariidad Sass ah oo scss/_variables.scss
loogu talagalay hadhyo cawl oo joogto ah dhammaan mashruucaaga.
Gudaha scss/_variables.scss
, waxaad ka heli doontaa doorsoomayaasha midabka Bootstrap iyo khariidadda Sass. Waa kuwan tusaale $colors
khariidadda Sass:
Ku dar, ka saar, ama wax ka beddel qiyamka khariidada dhexdeeda si aad u cusboonaysiiso sida loogu isticmaalo qaybo kale oo badan. Nasiib darro wakhtigan, ma aha qayb kasta oo ka faa'iidaysata khariidadan Sass. Cusboonaysiinta mustaqbalka waxay ku dadaali doontaa inay horumariso tan. Ilaa markaas, qorshee isticmaalka ${color}
doorsoomayaasha iyo khariidadan Sass.
Qaar badan oo ka mid ah qaybaha Bootstrap iyo yutiilitida waxaa lagu dhisay @each
wareegyo kuwaas oo ku celcelinaya khariidadda Sass. Tani waxay si gaar ah waxtar u leedahay soo saarista kala duwanaanshiyaha qayb inaga $theme-colors
iyo abuurista kala duwanaansho jawaab celin ah goob kasta oo jaban. Markaad habayso khariidadahan Sass oo aad dib u ururiso, waxaad si toos ah u arki doontaa isbeddeladaada oo ka muuqda wareegyadan.
Qaybo badan oo ka mid ah Bootstrap ayaa lagu dhisay hab fasalka wax ka beddelka ah. Tani waxay ka dhigan tahay in inta badan habaynta ay ka kooban tahay fasalka aasaasiga ah (tusaale, .btn
) halka kala duwanaanshaha qaabku uu ku kooban yahay fasallada wax ka beddelka (tusaale, .btn-danger
). Fasaladan wax ka beddelka ah waxa laga dhisay $theme-colors
khariidada si ay u habeeyaan tirada iyo magaca fasallada wax ka beddelka.
Waa kuwan laba tusaale oo ku saabsan sida aan u dulmarno $theme-colors
khariidada si aan u soo saarno wax ka beddelka .alert
qaybta iyo dhammaan .bg-*
adeegyadayada asalka ah.
Siddooyinkan Sass kuma koobna khariidadaha midabka, sidoo kale. Waxa kale oo aad abuuri kartaa kala duwanaansho jawaab celin ah oo ka mid ah qaybahaaga ama tamartaada. U soo qaado tusaale ahaan agabka toosinta qoraalka ee ka jawaabaya meesha aan ku dhex darno @each
loop-ka $grid-breakpoints
khariidadda Sass oo ay ku jirto su'aal warbaahineed.
Haddii aad u baahan tahay inaad wax ka beddesho kaaga $grid-breakpoints
, isbeddelladaadu waxay khuseeyaan dhammaan wareegyada ku celcelinaya khariidadaas.
Bootstrap 4 waxaa ku jira ku dhawaad laba darsin oo CSS ah oo guryaha gaarka loo leeyahay (kala duwanaansho) oo ku jira CSS-ta la soo uruuriyay. Kuwani waxay si fudud u helaan qiyamka sida caadiga ah loo isticmaalo sida midabada mawduucayada, meelaha goynta, iyo xidhmooyinka farta aasaasiga ah marka aad ka shaqaynayso Kormeeraha browserkaaga, sanduuqa koodka, ama wax-soo-saarka guud.
Waa kuwan doorsoomayaasha aan ku darno (ogow in :root
loo baahan yahay). Waxay ku yaalaan _root.scss
galkeena
Doorsoomayaasha CSS waxay bixiyaan dabacsanaan la mid ah doorsoomayaasha Sass, laakiin iyada oo aan loo baahnayn isku-dubarid ka hor inta aan loo gudbin browserka. Tusaale ahaan, halkan waxaan dib u dajinaynaa farta boggayaga iyo qaababka isku xidhka doorsoomayaasha CSS.
In kasta oo aan markii hore ku soo darnay qodobbada goynta doorsoomayaashayada CSS (tusaale, --breakpoint-md
), kuwan laguma taageero su'aalaha warbaahinta , laakiin weli waxa loo isticmaali karaa xeer hoosaadyada su'aalaha warbaahinta. Doorsoomayaashan barta jabintu waxay ku sii jiraan CSS-ta la soo ururiyey si ay dib ugu waafaqaan marka loo eego inay isticmaali karaan JavaScript. Wax badan ka baro faahfaahinta
Waa kuwan tusaale waxa aan la taageerin:
Oo halkan waa tusaale waxa la taageeray: