Bootstrap is boud op in responsyf 12-kolom raster. Wy hawwe ek yndielingen mei fêste en floeibere breedte opnommen basearre op dat systeem.
Bootstrap makket gebrûk fan HTML-eleminten en CSS-eigenskippen dy't it gebrûk fan it HTML5-doktype nedich binne. Wês wis dat jo it opnimme oan it begjin fan elke Bootstrapped-pagina yn jo projekt.
- <!DOCTYPE html>
- <html lang = "en" >
- ...
- </html>
Binnen it bestân scaffolding.less sette wy basis globale werjefte, typografy en keppelingsstilen yn. Spesifyk, wy:
background-color: white;
op debody
@baseFontFamily
, @baseFontSize
, en @baseLineHeight
attributen as ús typografyske basis@linkColor
en tapasse keppeling ûnderstreken allinich op:hover
Fanôf Bootstrap 2 is de tradisjonele CSS-reset evoluearre om gebrûk te meitsjen fan eleminten fan Normalize.css , in projekt fan Nicolas Gallagher dat ek de HTML5 Boilerplate oandriuwt .
De nije reset kin noch fûn wurde yn reset.less , mar mei in protte eleminten fuortsmiten foar koarteheid en krektens.
It standert rastersysteem levere yn Bootstrap brûkt 12 kolommen dy't werjaan op breedtes fan 724px, 940px (standert sûnder responsive CSS ynbegrepen), en 1170px. Under 767px viewports wurde de kolommen floeiend en steapele se fertikaal.
- <div class = "rige" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Lykas hjir te sjen is, kin in basisyndieling makke wurde mei twa "kolommen", elk oer in oantal fan 'e 12 fûnemintele kolommen dy't wy definieare as diel fan ús rastersysteem.
- <div class = "rige" >
- <div class = "span4" > ... </div>
- <div class = "span4 offset4" > ... </div>
- </div>
Mei it statyske (net-fluïde) rastersysteem yn Bootstrap is nesting maklik. Om jo ynhâld te nesteljen, foegje gewoan in nije .row
en set .span*
kolommen ta binnen in besteande .span*
kolom.
Neste rigen moatte in set kolommen befetsje dy't it oantal kolommen fan syn âlder optelle. Bygelyks, twa nestele .span3
kolommen moatte pleatst wurde binnen in .span6
.
- <div class = "rige" >
- <div class = "span6" >
- Level 1 kolom
- <div class = "rige" >
- <div class = "span3" > Nivo 2 </div>
- <div class = "span3" > Nivo 2 </div>
- </div>
- </div>
- </div>
It floeistofrastersysteem brûkt persintaazjes foar kolombreedtes ynstee fan fêste piksels. It hat ek deselde responsive fariaasjes as ús fêste rastersysteem, en soarget foar juste proporsjes foar resolúsjes en apparaten op it toetseboerd.
Meitsje elke rige floeistof gewoan troch te feroarjen .row
nei .row-fluid
. De kolommen bliuwe krekt itselde, wêrtroch it super maklik is om te wikseljen tusken fêste en floeiende yndielingen.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Nestjen mei floeibere rasters is in bytsje oars: it oantal nestele kolommen hoecht net oerien te kommen mei de âlder. Ynstee dêrfan wurde jo kolommen op elk nivo weromset, om't elke rige 100% fan 'e âlderkolom nimt.
- <div class = "row-fluid" >
- <div class = "span12" >
- Nivo 1 fan kolom
- <div class = "row-fluid" >
- <div class = "span6" > Nivo 2 </div>
- <div class = "span6" > Nivo 2 </div>
- </div>
- </div>
- </div>
Fariabel | Standertwearde | Beskriuwing |
---|---|---|
@gridColumns |
12 | Oantal kolommen |
@gridColumnWidth |
60px | Breedte fan elke kolom |
@gridGutterWidth |
20px | Negative romte tusken kolommen |
Ynboud yn Bootstrap binne in hantsjefol fariabelen foar it oanpassen fan it standert 940px rastersysteem, hjirboppe dokumintearre. Alle fariabelen foar it roaster wurde opslein yn variables.less.
It wizigjen fan it raster betsjut it feroarjen fan de trije @grid*
fariabelen en it opnij kompilearjen fan Bootstrap. Feroarje de rasterfariabelen yn variables.less en brûk ien fan 'e fjouwer dokumintearre manieren om opnij te kompilearjen . As jo mear kolommen tafoegje, wês dan wis dat jo de CSS tafoegje foar dy yn grid.less.
Oanpassing fan it raster wurket allinich op it standertnivo, it 940px-raster. Om de responsive aspekten fan Bootstrap te behâlden, moatte jo ek de rasters oanpasse yn responsive.less.
De standert en ienfâldige 940px-brede, sintraal yndieling foar sawat elke webside of side levere troch ien <div class="container">
.
- <body>
- <div class = "container" >
- ...
- </div>
- </body>
<div class="container-fluid">
jout fleksibele side struktuer, min- en max-widths, en in linker sydbalke. It is geweldich foar apps en dokuminten.
- <div class = "container-fluid" >
- <div class = "row-fluid" >
- <div class = "span2" >
- <!--Sydbalke ynhâld-->
- </div>
- <div class = "span10" >
- <!--Lichaam ynhâld-->
- </div>
- </div>
- </div>
Media-fragen jouwe oanpaste CSS mooglik op basis fan in oantal betingsten - ferhâldingen, breedtes, displaytype, min-width
ensfh max-width
.
Brûk mediafragen ferantwurde en allinich as in begjin foar jo mobile publyk. Besjoch foar gruttere projekten tawijde koadebasen en net lagen fan mediafragen.
Bootstrap stipet in hantsjefol mediafragen yn ien bestân om te helpen jo projekten passender te meitsjen op ferskate apparaten en skermresolúsjes. Hjir is wat opnommen is:
Etiket | Layout breedte | Kolom breedte | Gootbreedte |
---|---|---|---|
Snoadfoans | 480px en ûnder | Fluid kolommen, gjin fêste breedtes | |
Snoadfoans nei tablets | 767px en ûnder | Fluid kolommen, gjin fêste breedtes | |
Portret tablets | 768px en heger | 42px | 20px |
Standert | 980px en mear | 60px | 20px |
Grutte display | 1200px en mear | 70px | 30px |
Om te soargjen dat apparaten responsive siden goed werjaan, befetsje de viewport-metatag.
- <meta name = "viewport" content = "width=apparaatbreedte, initial-skaal=1.0" >
Bootstrap omfettet dizze mediafragen net automatysk, mar it begripen en tafoegjen is heul maklik en fereasket minimale opset. Jo hawwe in pear opsjes foar it opnimmen fan de responsive funksjes fan Bootstrap:
Wêrom net gewoan opnimme? De wierheid wurdt ferteld, net alles hoecht te reageren. Ynstee fan ûntwikkelders oan te moedigjen om dizze funksje te ferwiderjen, fine wy it it bêste om it yn te skeakeljen.
- /* Lânskip tillefoans en del */
- @media ( max - width : 480px ) { ... }
- /* Lânskip tillefoan nei portrettablet */
- @media ( max - width : 767px ) { ... }
- /* Portret tablet nei lânskip en buroblêd */
- @media ( min - breedte : 768px ) en ( max - breedte : 979px ) { ... }
- /* Grut buroblêd */
- @media ( min - breedte : 1200px ) { ... }
Foar rapper mobylfreonlike ûntwikkeling, brûk dizze basisprogrammaklassen foar it sjen en ferbergjen fan ynhâld per apparaat.
Brûk op in beheinde basis en foarkom it meitsjen fan folslein ferskillende ferzjes fan deselde side. Brûk se ynstee om de presintaasje fan elk apparaat oan te foljen.
Jo kinne bygelyks in <select>
elemint foar nav sjen op mobile opmaak, mar net op tablets of buroblêden.
Hjir werjûn is in tabel fan 'e klassen dy't wy stypje en har effekt op in opjûne mediaquery-yndieling (markearre troch apparaat). Se kinne fûn wurde yn responsive.less
.
Klasse | Tillefoans480px en ûnder | Tabletten767px en ûnder | Buroblêden768px en heger |
---|---|---|---|
.visible-phone |
Sichtber | Ferburgen | Ferburgen |
.visible-tablet |
Ferburgen | Sichtber | Ferburgen |
.visible-desktop |
Ferburgen | Ferburgen | Sichtber |
.hidden-phone |
Ferburgen | Sichtber | Sichtber |
.hidden-tablet |
Sichtber | Ferburgen | Sichtber |
.hidden-desktop |
Sichtber | Sichtber | Ferburgen |
Feroarje de grutte fan jo blêder of lade op ferskate apparaten om de boppesteande klassen te testen.
Griene karmerken jouwe oan dat klasse sichtber is yn jo hjoeddeistige viewport.
Hjir jouwe griene karmerken oan dat klasse ferburgen is yn jo hjoeddeistige viewport.