બુટસ્ટ્રેપ પ્રતિભાવ 12-કૉલમ ગ્રીડ પર બનેલ છે. અમે તે સિસ્ટમના આધારે નિશ્ચિત- અને પ્રવાહી-પહોળાઈના લેઆઉટનો પણ સમાવેશ કર્યો છે.
બુટસ્ટ્રેપ HTML તત્વો અને CSS ગુણધર્મોનો ઉપયોગ કરે છે જેને HTML5 doctypeનો ઉપયોગ કરવાની જરૂર હોય છે. તમારા પ્રોજેક્ટમાં દરેક બુટસ્ટ્રેપ પૃષ્ઠની શરૂઆતમાં તેને શામેલ કરવાની ખાતરી કરો.
- <!DOCTYPE html>
- <html lang = "en" >
- ...
- </html>
scaffolding.less ફાઇલમાં, અમે મૂળભૂત વૈશ્વિક પ્રદર્શન, ટાઇપોગ્રાફી અને લિંક શૈલીઓ સેટ કરીએ છીએ . ખાસ કરીને, અમે:
background-color: white;
કરોbody
@baseFontFamily
અમારા ટાઇપોગ્રાફિક આધાર તરીકે , @baseFontSize
, અને @baseLineHeight
વિશેષતાઓનો ઉપયોગ કરો@linkColor
અને ફક્ત તેના પર જ લિંક અન્ડરલાઇન્સ લાગુ કરો:hover
બુટસ્ટ્રેપ 2 મુજબ, પરંપરાગત CSS રીસેટ Normalize.css માંથી તત્વોનો ઉપયોગ કરવા માટે વિકસિત થયું છે , જે નિકોલસ ગેલાઘર દ્વારા એક પ્રોજેક્ટ છે જે HTML5 બોઈલરપ્લેટને પણ શક્તિ આપે છે .
નવું રીસેટ હજુ પણ reset.less માં મળી શકે છે , પરંતુ સંક્ષિપ્તતા અને ચોકસાઈ માટે ઘણા ઘટકો દૂર કરવામાં આવ્યા છે.
બુટસ્ટ્રેપમાં પૂરી પાડવામાં આવેલ ડિફૉલ્ટ ગ્રીડ સિસ્ટમ 12 કૉલમનો ઉપયોગ કરે છે જે 724px, 940px (રિસ્પોન્સિવ CSS શામેલ વિના ડિફૉલ્ટ) અને 1170px ની પહોળાઈ પર રેન્ડર થાય છે. 767px વ્યુપોર્ટની નીચે, કૉલમ પ્રવાહી બની જાય છે અને ઊભી રીતે સ્ટેક થાય છે.
- <div વર્ગ = "પંક્તિ" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
અહીં બતાવ્યા પ્રમાણે, બે "કૉલમ્સ" સાથે મૂળભૂત લેઆઉટ બનાવી શકાય છે, દરેક 12 ફાઉન્ડેશનલ કૉલમ્સની સંખ્યાને ફેલાવે છે જે અમે અમારી ગ્રીડ સિસ્ટમના ભાગ તરીકે વ્યાખ્યાયિત કરી છે.
- <div વર્ગ = "પંક્તિ" >
- <div class = "span4" > ... </div>
- <div class = "span4 offset4" > ... </div>
- </div>
બુટસ્ટ્રેપમાં સ્થિર (બિન-પ્રવાહી) ગ્રીડ સિસ્ટમ સાથે, માળો બાંધવાનું સરળ છે. તમારી સામગ્રીને નેસ્ટ કરવા માટે, હાલની કૉલમમાં ફક્ત એક નવો .row
અને કૉલમનો સેટ ઉમેરો ..span*
.span*
નેસ્ટેડ પંક્તિઓમાં કૉલમનો સમૂહ શામેલ હોવો જોઈએ જે તેના પેરેંટની કૉલમ્સની સંખ્યાને ઉમેરે છે. ઉદાહરણ તરીકે, બે નેસ્ટેડ .span3
કૉલમ એક ની અંદર મૂકવા જોઈએ .span6
.
- <div વર્ગ = "પંક્તિ" >
- <div class = "span6" >
- સ્તર 1 કૉલમ
- <div વર્ગ = "પંક્તિ" >
- <div class = "span3" > સ્તર 2 </div>
- <div class = "span3" > સ્તર 2 </div>
- </div>
- </div>
- </div>
પ્રવાહી ગ્રીડ સિસ્ટમ નિશ્ચિત પિક્સેલને બદલે કૉલમની પહોળાઈ માટે ટકાનો ઉપયોગ કરે છે. તે અમારી ફિક્સ્ડ ગ્રીડ સિસ્ટમની જેમ જ પ્રતિભાવશીલ ભિન્નતા ધરાવે છે, જે કી સ્ક્રીન રીઝોલ્યુશન અને ઉપકરણો માટે યોગ્ય પ્રમાણને સુનિશ્ચિત કરે છે.
માં બદલીને કોઈપણ પંક્તિ પ્રવાહી .row
બનાવો .row-fluid
. સ્તંભો ચોક્કસ સમાન રહે છે, તેને નિશ્ચિત અને પ્રવાહી લેઆઉટ વચ્ચે ફ્લિપ કરવા માટે ખૂબ જ સરળ બનાવે છે.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
ફ્લુઇડ ગ્રીડ સાથે નેસ્ટિંગ થોડું અલગ છે: નેસ્ટેડ કૉલમની સંખ્યા પિતૃ સાથે મેળ ખાતી હોય તે જરૂરી નથી. તેના બદલે, તમારી કૉલમ દરેક સ્તરે રીસેટ થાય છે કારણ કે દરેક પંક્તિ પેરેંટ કૉલમના 100% ભાગ લે છે.
- <div class = "row-fluid" >
- <div class = "span12" >
- કૉલમનું સ્તર 1
- <div class = "row-fluid" >
- <div class = "span6" > સ્તર 2 </div>
- <div class = "span6" > સ્તર 2 </div>
- </div>
- </div>
- </div>
ચલ | ડિફૉલ્ટ મૂલ્ય | વર્ણન |
---|---|---|
@gridColumns |
12 | કૉલમની સંખ્યા |
@gridColumnWidth |
60px | દરેક સ્તંભની પહોળાઈ |
@gridGutterWidth |
20px | કૉલમ વચ્ચે નકારાત્મક જગ્યા |
બુટસ્ટ્રેપમાં બિલ્ટ ઇન ડિફૉલ્ટ 940px ગ્રીડ સિસ્ટમને કસ્ટમાઇઝ કરવા માટે મુઠ્ઠીભર ચલો છે, જે ઉપર દસ્તાવેજીકૃત છે. ગ્રીડ માટેના તમામ ચલો variables.less માં સંગ્રહિત છે.
ગ્રીડને સંશોધિત કરવાનો અર્થ છે ત્રણ @grid*
ચલોને બદલવું અને બુટસ્ટ્રેપને ફરીથી કમ્પાઇલ કરવું. variables.less માં ગ્રીડ ચલોને બદલો અને પુનઃસંકલન કરવા માટે દસ્તાવેજીકૃત ચાર રીતોમાંથી એકનો ઉપયોગ કરો . જો તમે વધુ કૉલમ ઉમેરી રહ્યાં છો, તો grid.less માં રહેલા લોકો માટે CSS ઉમેરવાની ખાતરી કરો.
ગ્રીડનું કસ્ટમાઇઝેશન માત્ર ડિફોલ્ટ સ્તર, 940px ગ્રીડ પર કામ કરે છે. બુટસ્ટ્રેપના પ્રતિભાવશીલ પાસાઓને જાળવવા માટે, તમારે ગ્રીડને રિસ્પોન્સિવ.લેસમાં કસ્ટમાઇઝ પણ કરવી પડશે.
ડિફૉલ્ટ અને સરળ 940px-વાઇડ, એકલ દ્વારા પૂરી પાડવામાં આવેલ લગભગ કોઈપણ વેબસાઇટ અથવા પૃષ્ઠ માટે કેન્દ્રિત લેઆઉટ <div class="container">
.
- <body>
- <div વર્ગ = "કન્ટેનર" >
- ...
- </div>
- </body>
<div class="container-fluid">
લવચીક પૃષ્ઠ માળખું, ન્યૂનતમ અને મહત્તમ પહોળાઈ અને ડાબી બાજુની સાઇડબાર આપે છે. તે એપ્લિકેશન્સ અને દસ્તાવેજો માટે સરસ છે.
- <div class = "container-fluid" >
- <div class = "row-fluid" >
- <div class = "span2" >
- <!--સાઇડબાર સામગ્રી-->
- </div>
- <div class = "span10" >
- <!--શરીર સામગ્રી-->
- </div>
- </div>
- </div>
મીડિયા ક્વેરીઝ સંખ્યાબંધ શરતોના આધારે કસ્ટમ CSS માટે પરવાનગી આપે છે—ગુણોત્તર, પહોળાઈ, ડિસ્પ્લે પ્રકાર, વગેરે—પરંતુ સામાન્ય રીતે આસપાસ min-width
અને max-width
.
મીડિયા ક્વેરીઝનો ઉપયોગ જવાબદારીપૂર્વક કરો અને ફક્ત તમારા મોબાઇલ પ્રેક્ષકો માટે શરૂઆત તરીકે કરો. મોટા પ્રોજેક્ટ્સ માટે, સમર્પિત કોડ બેઝને ધ્યાનમાં લો અને મીડિયા પ્રશ્નોના સ્તરોને નહીં.
બુટસ્ટ્રેપ વિવિધ ઉપકરણો અને સ્ક્રીન રીઝોલ્યુશન પર તમારા પ્રોજેક્ટ્સને વધુ યોગ્ય બનાવવામાં મદદ કરવા માટે એક ફાઇલમાં કેટલીક મીડિયા ક્વેરીઝને સપોર્ટ કરે છે. અહીં શું શામેલ છે તે છે:
લેબલ | લેઆઉટ પહોળાઈ | કૉલમની પહોળાઈ | ગટરની પહોળાઈ |
---|---|---|---|
સ્માર્ટફોન | 480px અને નીચે | પ્રવાહી કૉલમ, કોઈ નિશ્ચિત પહોળાઈ નથી | |
સ્માર્ટફોનથી ટેબ્લેટ | 767px અને નીચે | પ્રવાહી કૉલમ, કોઈ નિશ્ચિત પહોળાઈ નથી | |
પોટ્રેટ ગોળીઓ | 768px અને તેથી વધુ | 42px | 20px |
ડિફૉલ્ટ | 980px અને તેથી વધુ | 60px | 20px |
વિશાળ પ્રદર્શન | 1200px અને વધુ | 70px | 30px |
ઉપકરણો પ્રતિભાવશીલ પૃષ્ઠોને યોગ્ય રીતે પ્રદર્શિત કરે છે તેની ખાતરી કરવા માટે, વ્યૂપોર્ટ મેટા ટેગનો સમાવેશ કરો.
- <મેટા નામ = "વ્યુપોર્ટ" સામગ્રી = "પહોળાઈ=ઉપકરણ-પહોળાઈ, પ્રારંભિક-સ્કેલ=1.0" >
બુટસ્ટ્રેપ આ મીડિયા ક્વેરીઝને આપમેળે સમાવતું નથી, પરંતુ તેમને સમજવું અને ઉમેરવું ખૂબ જ સરળ છે અને ન્યૂનતમ સેટઅપની જરૂર છે. તમારી પાસે બુટસ્ટ્રેપની પ્રતિભાવશીલ સુવિધાઓનો સમાવેશ કરવા માટે થોડા વિકલ્પો છે:
શા માટે માત્ર તે શામેલ નથી? સાચું કહું, દરેક વસ્તુ પ્રતિભાવશીલ હોવી જરૂરી નથી. વિકાસકર્તાઓને આ સુવિધા દૂર કરવા માટે પ્રોત્સાહિત કરવાને બદલે, અમે તેને સક્ષમ કરવાનું શ્રેષ્ઠ ગણીએ છીએ.
- /* લેન્ડસ્કેપ ફોન અને ડાઉન */
- @મીડિયા ( મહત્તમ - પહોળાઈ : 480px ) { ... }
- /* લેન્ડસ્કેપ ફોનથી પોટ્રેટ ટેબ્લેટ */
- @મીડિયા ( મહત્તમ - પહોળાઈ : 767px ) { ... }
- /* લેન્ડસ્કેપ અને ડેસ્કટોપ માટે પોટ્રેટ ટેબ્લેટ */
- @મીડિયા ( ન્યૂનતમ - પહોળાઈ : 768px ) અને ( મહત્તમ - પહોળાઈ : 979px ) { ... }
- /* મોટું ડેસ્કટોપ */
- @મીડિયા ( મિનિટ - પહોળાઈ : 1200px ) { ... }
ઝડપી મોબાઇલ-મૈત્રીપૂર્ણ વિકાસ માટે, ઉપકરણ દ્વારા સામગ્રી બતાવવા અને છુપાવવા માટે આ મૂળભૂત ઉપયોગિતા વર્ગોનો ઉપયોગ કરો.
મર્યાદિત ધોરણે ઉપયોગ કરો અને એક જ સાઇટના સંપૂર્ણપણે અલગ વર્ઝન બનાવવાનું ટાળો. તેના બદલે, દરેક ઉપકરણની પ્રસ્તુતિને પૂરક બનાવવા માટે તેનો ઉપયોગ કરો.
ઉદાહરણ તરીકે, તમે મોબાઇલ લેઆઉટ પર nav માટે તત્વ બતાવી શકો છો <select>
, પરંતુ ટેબ્લેટ અથવા ડેસ્કટોપ પર નહીં.
અમે જે વર્ગોને સમર્થન આપીએ છીએ તેનું કોષ્ટક અને આપેલ મીડિયા ક્વેરી લેઆઉટ (ઉપકરણ દ્વારા લેબલ થયેલ) પર તેમની અસર અહીં બતાવવામાં આવી છે. તેઓ માં મળી શકે છે responsive.less
.
વર્ગ | ફોન480px અને નીચે | ગોળીઓ767px અને નીચે | ડેસ્કટોપ્સ768px અને તેથી વધુ |
---|---|---|---|
.visible-phone |
દૃશ્યમાન | છુપાયેલ | છુપાયેલ |
.visible-tablet |
છુપાયેલ | દૃશ્યમાન | છુપાયેલ |
.visible-desktop |
છુપાયેલ | છુપાયેલ | દૃશ્યમાન |
.hidden-phone |
છુપાયેલ | દૃશ્યમાન | દૃશ્યમાન |
.hidden-tablet |
દૃશ્યમાન | છુપાયેલ | દૃશ્યમાન |
.hidden-desktop |
દૃશ્યમાન | દૃશ્યમાન | છુપાયેલ |
ઉપરોક્ત વર્ગોને ચકાસવા માટે તમારા બ્રાઉઝરનું કદ બદલો અથવા વિવિધ ઉપકરણો પર લોડ કરો.
લીલા ચેકમાર્ક્સ સૂચવે છે કે વર્ગ તમારા વર્તમાન વ્યુપોર્ટમાં દૃશ્યમાન છે.
અહીં, લીલા ચેકમાર્ક સૂચવે છે કે વર્ગ તમારા વર્તમાન વ્યુપોર્ટમાં છુપાયેલ છે.