Bootstrap er bygget på responsive 12-kolonne rutenett, oppsett og komponenter.
Bootstrap bruker visse HTML-elementer og CSS-egenskaper som krever bruk av HTML5 doctype. Inkluder det i begynnelsen av alle prosjektene dine.
- <!DOCTYPE html>
- <html lang = "no" >
- ...
- </html>
Bootstrap setter grunnleggende globale visnings-, typografi- og lenkestiler. Nærmere bestemt:
margin
på kroppenbackground-color: white;
påbody
@baseFontFamily
, @baseFontSize
, og @baseLineHeight
attributtene som vår typografiske base@linkColor
og bruk lenkeunderstreking kun på:hover
Disse stilene kan finnes innenfor scaffolding.less .
Med Bootstrap 2 har den gamle tilbakestillingsblokken blitt droppet til fordel for Normalize.css , et prosjekt av Nicolas Gallagher og Jonathan Neal som også driver HTML5 Boilerplate . Mens vi bruker mye av Normalize i vår reset.less , har vi fjernet noen elementer spesifikt for Bootstrap.
Standard Bootstrap-rutenettsystemet bruker 12 kolonner , noe som gir en 940px bred beholder uten responsive funksjoner aktivert. Med den responsive CSS-filen lagt til, tilpasser rutenettet seg til å være 724px og 1170px bredt avhengig av visningsporten din. Under 767px viewporter blir kolonnene flytende og stables vertikalt.
For en enkel layout med to kolonner, lag en .row
og legg til riktig antall .span*
kolonner. Siden dette er et rutenett .span*
med 12 kolonner, spenner hver over et antall av disse 12 kolonnene, og bør alltid legge til 12 for hver rad (eller antall kolonner i den overordnede).
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Gitt dette eksemplet har vi .span4
og .span8
, noe som gir totalt 12 kolonner og en hel rad.
Flytt kolonner til høyre ved å bruke .offset*
klasser. Hver klasse øker venstre marg i en kolonne med en hel kolonne. .offset4
Flytter for eksempel .span4
over fire kolonner.
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span3 offset2" > ... </div>
- </div>
For å legge innholdet ditt med standardrutenettet, legg til en ny .row
og et sett med .span*
kolonner i en eksisterende .span*
kolonne. Nestede rader skal inneholde et sett med kolonner som summerer seg til antall kolonner til den overordnede.
- <div class = "row" >
- <div class = "span9" >
- Nivå 1 kolonne
- <div class = "row" >
- <div class = "span6" > Nivå 2 </div>
- <div class = "span3" > Nivå 2 </div>
- </div>
- </div>
- </div>
Fluidgittersystemet bruker prosenter i stedet for piksler for kolonnebredder. Den har samme responsevne som vårt faste rutenettsystem, og sikrer riktige proporsjoner for viktige skjermoppløsninger og enheter.
Gjør hvilken som helst rad "flytende" ved å endre .row
til .row-fluid
. Kolonneklassene forblir de samme, noe som gjør det enkelt å veksle mellom faste og flytende rutenett.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Fungerer på samme måte som forskyvningen av det faste rutenettet: legg .offset*
til en hvilken som helst kolonne for å forskyve med så mange kolonner.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span4 offset2" > ... </div>
- </div>
Væskenett utnytter nesting annerledes: hvert nestet nivå av kolonner skal legge til opptil 12 kolonner. Dette er fordi væskenettet bruker prosenter, ikke piksler, for å angi bredder.
- <div class = "row-fluid" >
- <div class = "span12" >
- Væske 12
- <div class = "row-fluid" >
- <div class = "span6" >
- Væske 6
- <div class = "row-fluid" >
- <div class = "span6" > Fluid 6 </div>
- <div class = "span6" > Fluid 6 </div>
- </div>
- </div>
- <div class = "span6" > Fluid 6 </div>
- </div>
- </div>
- </div>
Gir et felles oppsett med fast bredde (og valgfritt responsivt) med bare <div class="container">
nødvendig.
- <body>
- <div class = "container" >
- ...
- </div>
- </body>
Lag en flytende side med to kolonner med <div class="container-fluid">
– flott for applikasjoner og dokumenter.
- <div class = "container-fluid" >
- <div class = "row-fluid" >
- <div class = "span2" >
- <!--Sidefeltinnhold-->
- </div>
- <div class = "span10" >
- <!--Broppsinnhold-->
- </div>
- </div>
- </div>
Slå på responsiv CSS i prosjektet ditt ved å inkludere riktig metatag og ekstra stilark i <head>
dokumentet ditt. Hvis du har kompilert Bootstrap fra Tilpass-siden, trenger du bare inkludere metakoden.
- <meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
- <link href = "assets/css/bootstrap-responsive.css" rel = "stilark" >
Vær oppmerksom!Bootstrap inkluderer ikke responsive funksjoner som standard på dette tidspunktet, da ikke alt trenger å være responsivt. I stedet for å oppmuntre utviklere til å fjerne denne funksjonen, finner vi det best å aktivere den etter behov.
Mediespørringer tillater tilpasset CSS basert på en rekke forhold – forhold, bredder, visningstype osv. – men fokuserer vanligvis rundt min-width
og max-width
.
Bruk mediesøk på en ansvarlig måte og bare som en start på mobilpublikummet ditt. For større prosjekter bør du vurdere dedikerte kodebaser og ikke lag med mediespørringer.
Bootstrap støtter en håndfull mediespørringer i en enkelt fil for å gjøre prosjektene dine mer passende på forskjellige enheter og skjermoppløsninger. Her er hva som er inkludert:
Merkelapp | Layout bredde | Kolonnebredde | Rennebredde |
---|---|---|---|
Stort display | 1200px og oppover | 70 piksler | 30 piksler |
Misligholde | 980px og oppover | 60 piksler | 20 piksler |
Portrett nettbrett | 768px og over | 42px | 20 piksler |
Telefoner til nettbrett | 767px og lavere | Væskesøyler, ingen faste bredder | |
Telefoner | 480px og lavere | Væskesøyler, ingen faste bredder |
- /* Stort skrivebord */
- @media ( min - bredde : 1200px ) { ... }
- /* Stående nettbrett til liggende og skrivebord */
- @media ( min - bredde : 768px ) og ( maks - bredde : 979px ) { ... }
- /* Liggende telefon til stående nettbrett */
- @media ( maks . bredde : 767px ) { ... }
- /* Liggende telefoner og nedover */
- @media ( maks . bredde : 480px ) { ... }
For raskere mobilvennlig utvikling, bruk disse verktøyklassene for å vise og skjule innhold etter enhet. Nedenfor er en tabell over de tilgjengelige klassene og deres effekt på et gitt mediespørringsoppsett (merket med enhet). De finnes i responsive.less
.
Klasse | Telefoner767px og lavere | Nettbrett979px til 768px | Stasjonære datamaskinerMisligholde |
---|---|---|---|
.visible-phone |
Synlig | Skjult | Skjult |
.visible-tablet |
Skjult | Synlig | Skjult |
.visible-desktop |
Skjult | Skjult | Synlig |
.hidden-phone |
Skjult | Synlig | Synlig |
.hidden-tablet |
Synlig | Skjult | Synlig |
.hidden-desktop |
Synlig | Synlig | Skjult |
Bruk på begrenset basis og unngå å lage helt forskjellige versjoner av samme nettsted. Bruk dem i stedet for å komplettere presentasjonen til hver enhet. Responsive verktøy skal ikke brukes med tabeller, og støttes derfor ikke.
Endre størrelsen på nettleseren din eller last inn på forskjellige enheter for å teste klassene ovenfor.
Grønne haker indikerer at klassen er synlig i din nåværende visningsport.
Her indikerer grønne haker at klassen er skjult i din nåværende visningsport.