Bootstrap er bygget på et responsivt 12-søjlet gitter. Vi har også inkluderet layouter med fast og flydende bredde baseret på dette system.
Bootstrap gør brug af HTML-elementer og CSS-egenskaber, der kræver brug af HTML5-doctype. Sørg for at inkludere det i begyndelsen af hver Bootstrapped-side i dit projekt.
- <!DOCTYPE html>
- <html lang = "da" >
- ...
- </html>
I filen scaffolding.less indstiller vi grundlæggende global visning, typografi og linkstile. Helt konkret har vi:
background-color: white;
påbody
@baseFontFamily
, @baseFontSize
, og @baseLineHeight
attributterne som vores typografiske base@linkColor
og anvend kun linkunderstregninger på:hover
Fra Bootstrap 2 har den traditionelle CSS-nulstilling udviklet sig til at gøre brug af elementer fra Normalize.css , et projekt af Nicolas Gallagher , der også driver HTML5 Boilerplate .
Den nye nulstilling kan stadig findes i reset.less , men med mange elementer fjernet for kortheds skyld og nøjagtighed.
Standardgittersystemet i Bootstrap bruger 12 kolonner , der gengives i bredder på 724px, 940px (standard uden responsiv CSS inkluderet) og 1170px. Under 767px viewports bliver søjlerne flydende og stables lodret.
- <div klasse = "række" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Som vist her kan der oprettes et grundlæggende layout med to "kolonner", der hver spænder over et antal af de 12 grundsøjler, vi definerede som en del af vores gittersystem.
- <div klasse = "række" >
- <div class = "span4" > ... </div>
- <div class = "span4 offset4" > ... </div>
- </div>
Med det statiske (ikke-flydende) gittersystem i Bootstrap er indlejring let. For at indlejre dit indhold skal du blot tilføje en ny .row
og et sæt .span*
kolonner i en eksisterende .span*
kolonne.
Indlejrede rækker skal indeholde et sæt kolonner, der summeres til antallet af kolonner for dets overordnede. For eksempel skal to indlejrede .span3
kolonner placeres i en .span6
.
- <div klasse = "række" >
- <div class = "span6" >
- Niveau 1 kolonne
- <div klasse = "række" >
- <div class = "span3" > Niveau 2 </div>
- <div class = "span3" > Niveau 2 </div>
- </div>
- </div>
- </div>
Fluidgittersystemet bruger procenter til kolonnebredder i stedet for faste pixels. Det har også de samme responsive variationer som vores faste gittersystem, hvilket sikrer korrekte proportioner for vigtige skærmopløsninger og enheder.
Gør enhver række flydende blot ved at skifte .row
til .row-fluid
. Søjlerne forbliver de samme, hvilket gør det super nemt at vende mellem faste og flydende layouts.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Indlejring med flydende gitter er lidt anderledes: Antallet af indlejrede kolonner behøver ikke at matche det overordnede. I stedet nulstilles dine kolonner på hvert niveau, fordi hver række fylder 100 % af den overordnede kolonne.
- <div class = "row-fluid" >
- <div class = "span12" >
- Niveau 1 i kolonnen
- <div class = "row-fluid" >
- <div class = "span6" > Niveau 2 </div>
- <div class = "span6" > Niveau 2 </div>
- </div>
- </div>
- </div>
Variabel | Standard værdi | Beskrivelse |
---|---|---|
@gridColumns |
12 | Antal kolonner |
@gridColumnWidth |
60 px | Bredden af hver kolonne |
@gridGutterWidth |
20 px | Negativt mellemrum mellem kolonner |
Indbygget i Bootstrap er en håndfuld variabler til tilpasning af standard 940px-gittersystemet, dokumenteret ovenfor. Alle variabler for gitteret gemmes i variables.less.
Ændring af gitteret betyder at ændre de tre @grid*
variabler og genkompilere Bootstrap. Skift gittervariablerne i variables.less og brug en af de fire dokumenterede måder til at rekompilere . Hvis du tilføjer flere kolonner, skal du sørge for at tilføje CSS for dem i grid.less.
Tilpasning af gitteret fungerer kun på standardniveauet, 940px-gitteret. For at vedligeholde de responsive aspekter af Bootstrap, bliver du også nødt til at tilpasse gitrene i responsive.less.
Standardlayoutet og det enkle 940px-brede, centrerede layout til stort set alle websteder eller sider leveret af en enkelt <div class="container">
.
- <body>
- <div class = "container" >
- ...
- </div>
- </body>
<div class="container-fluid">
giver fleksibel sidestruktur, min- og max-bredder og en venstre sidebjælke. Det er fantastisk til apps og dokumenter.
- <div class = "container-fluid" >
- <div class = "row-fluid" >
- <div class = "span2" >
- <!--Sidebjælkeindhold-->
- </div>
- <div class = "span10" >
- <!--Kropsindhold-->
- </div>
- </div>
- </div>
Medieforespørgsler tillader tilpasset CSS baseret på en række forhold – forhold, bredder, visningstype osv. – men fokuserer normalt omkring min-width
og max-width
.
Brug medieforespørgsler ansvarligt og kun som en start på dine mobile målgrupper. For større projekter skal du overveje dedikerede kodebaser og ikke lag af medieforespørgsler.
Bootstrap understøtter en håndfuld medieforespørgsler i en enkelt fil for at hjælpe med at gøre dine projekter mere passende på forskellige enheder og skærmopløsninger. Her er hvad der er inkluderet:
Etiket | Layout bredde | Søjlebredde | Tagrendes bredde |
---|---|---|---|
Smartphones | 480px og derunder | Væskesøjler, ingen faste bredder | |
Smartphones til tablets | 767px og derunder | Væskesøjler, ingen faste bredder | |
Portræt tablets | 768px og derover | 42px | 20 px |
Standard | 980px og op | 60 px | 20 px |
Stort display | 1200px og op | 70 px | 30 px |
For at sikre, at enheder viser responsive sider korrekt, skal du inkludere viewport-metatagget.
- <meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
Bootstrap inkluderer ikke automatisk disse medieforespørgsler, men det er meget nemt at forstå og tilføje dem og kræver minimal opsætning. Du har et par muligheder for at inkludere de responsive funktioner i Bootstrap:
Hvorfor ikke bare inkludere det? Sandt at sige, ikke alt behøver at være lydhør. I stedet for at opfordre udviklere til at fjerne denne funktion, finder vi det bedst at aktivere den.
- /* Liggende telefoner og nedad */
- @media ( maks . bredde : 480px ) { ... }
- /* Liggende telefon til portrættablet */
- @media ( maks . bredde : 767px ) { ... }
- /* Portræt tablet til liggende og desktop */
- @media ( min - bredde : 768px ) og ( maks.bredde : 979px ) { ... } _ _
- /* Stort skrivebord */
- @media ( min - bredde : 1200px ) { ... }
For hurtigere mobilvenlig udvikling skal du bruge disse grundlæggende hjælpeklasser til at vise og skjule indhold efter enhed.
Brug på et begrænset grundlag og undgå at oprette helt forskellige versioner af det samme websted. Brug dem i stedet til at komplementere hver enheds præsentation.
For eksempel kan du vise et <select>
element til nav på mobillayout, men ikke på tablets eller desktops.
Her vises en tabel over de klasser, vi understøtter, og deres effekt på et givet medieforespørgselslayout (mærket efter enhed). De kan findes i responsive.less
.
Klasse | Telefoner480px og derunder | Tabletter767px og derunder | Desktops768px og derover |
---|---|---|---|
.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 |
Tilpas størrelsen på din browser eller indlæs på forskellige enheder for at teste ovenstående klasser.
Grønne flueben angiver, at klassen er synlig i din aktuelle visningsport.
Her angiver grønne flueben, at klassen er skjult i din aktuelle visningsport.