Bootstrap je postavený na responzívnej 12-stĺpcovej mriežke. Zahrnuli sme aj rozloženia s pevnou a premenlivou šírkou založené na tomto systéme.
Bootstrap využíva prvky HTML a vlastnosti CSS, ktoré vyžadujú použitie doctype HTML5. Nezabudnite ho zahrnúť na začiatok každej stránky Bootstrapped vo svojom projekte.
- <!DOCTYPE html>
- <html lang = "sk" >
- ...
- </html>
V rámci súboru scaffolding.less nastavujeme základné globálne štýly zobrazenia, typografie a odkazov. My konkrétne:
background-color: white;
nabody
@baseFontFamily
, @baseFontSize
, a ako náš typografický základ@baseLineHeight
@linkColor
a použite podčiarknutie odkazu iba na:hover
Od Bootstrapu 2 sa tradičný reset CSS vyvinul tak, aby využíval prvky z Normalize.css , projektu Nicolasa Gallaghera , ktorý poháňa aj HTML5 Boilerplate .
Nový reset možno stále nájsť v reset.less , ale kvôli stručnosti a presnosti je odstránených veľa prvkov.
Predvolený mriežkový systém poskytovaný ako súčasť Bootstrapu je 940 pixelov široká, 12-stĺpcová mriežka .
Má tiež štyri responzívne variácie pre rôzne zariadenia a rozlíšenia: telefón, tablet na výšku, na šírku stola a malé plochy a veľké širokouhlé plochy.
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Ako je tu znázornené, základné rozloženie je možné vytvoriť s dvoma „stĺpcami“, pričom každý zahŕňa niekoľko z 12 základných stĺpcov, ktoré sme definovali ako súčasť nášho mriežkového systému.
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span4 offset4" > ... </div>
- </div>
So statickým (netekutým) mriežkovým systémom v Bootstrape je vkladanie jednoduché. Ak chcete vnoriť svoj obsah, stačí pridať nový .row
a sadu .span*
stĺpcov do existujúceho .span*
stĺpca.
Vnorené riadky by mali obsahovať množinu stĺpcov, ktorých súčet zodpovedá počtu stĺpcov nadradeného objektu. Napríklad dva vnorené .span3
stĺpce by mali byť umiestnené v rámci .span6
.
- <div class = "row" >
- <div class = "span12" >
- Úroveň 1 stĺpca
- <div class = "row" >
- <div class = "span6" > Úroveň 2 </div>
- <div class = "span6" > Úroveň 2 </div>
- </div>
- </div>
- </div>
Systém tekutej mriežky používa percentá pre šírky stĺpcov namiesto pevných pixelov. Má tiež rovnaké variácie odozvy ako náš systém pevnej mriežky, čo zabezpečuje správne proporcie pre kľúčové rozlíšenia obrazovky a zariadenia.
Urobte akýkoľvek riadok tekutým jednoducho zmenou .row
na .row-fluid
. Stĺpce zostávajú úplne rovnaké, vďaka čomu je prepínanie medzi pevným a plynulým rozložením veľmi jednoduché.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Vnorenie s tekutými mriežkami je trochu iné: počet vnorených stĺpcov sa nemusí zhodovať s nadradeným. Namiesto toho sa vaše stĺpce obnovia na každej úrovni, pretože každý riadok zaberá 100 % nadradeného stĺpca.
- <div class = "row-fluid" >
- <div class = "span12" >
- Úroveň 1 stĺpca
- <div class = "row-fluid" >
- <div class = "span6" > Úroveň 2 </div>
- <div class = "span6" > Úroveň 2 </div>
- </div>
- </div>
- </div>
Variabilné | Predvolená hodnota | Popis |
---|---|---|
@gridColumns |
12 | Počet stĺpcov |
@gridColumnWidth |
60 pixelov | Šírka každého stĺpca |
@gridGutterWidth |
20 pixelov | Záporná medzera medzi stĺpcami |
@siteWidth |
Vypočítaný súčet všetkých stĺpov a odkvapov | Počíta počet stĺpcov a odkvapov pre nastavenie šírky .container-fixed() mixu |
Bootstrap obsahuje niekoľko premenných na prispôsobenie predvoleného systému mriežky 940 pixelov, ako je zdokumentované vyššie. Všetky premenné pre mriežku sú uložené v premenných.less.
Úprava mriežky znamená zmenu troch @grid*
premenných a opätovnú kompiláciu Bootstrapu. Zmeňte premenné mriežky v variables.less a použite jeden zo štyroch zdokumentovaných spôsobov rekompilácie . Ak pridávate viac stĺpcov, nezabudnite pridať CSS pre tie v grid.less.
Prispôsobenie mriežky funguje iba na predvolenej úrovni, mriežke 940 pixelov. Ak chcete zachovať responzívne aspekty Bootstrapu, budete si musieť prispôsobiť aj mriežky v responsive.less.
Predvolené a jednoduché rozloženie so šírkou 940 pixelov na stred pre takmer akúkoľvek webovú lokalitu alebo stránku poskytovanú jedným súborom <div class="container">
.
- <body>
- <div class = "container" >
- ...
- </div>
- </body>
<div class="container-fluid">
poskytuje flexibilnú štruktúru stránky, minimálnu a maximálnu šírku a ľavý bočný panel. Je to skvelé pre aplikácie a dokumenty.
- <div class = "container-fluid" >
- <div class = "row-fluid" >
- <div class = "span2" >
- <!--Obsah bočného panela-->
- </div>
- <div class = "span10" >
- <!--Obsah tela-->
- </div>
- </div>
- </div>
Dopyty na médiá umožňujú vlastný štýl CSS na základe množstva podmienok – pomery, šírky, typ zobrazenia atď. – ale zvyčajne sa zameriavajú okolo min-width
a max-width
.
Mediálne dopyty používajte zodpovedne a len ako začiatok pre vaše mobilné publikum. Pri väčších projektoch zvážte špecializované kódové základne a nie vrstvy mediálnych dopytov.
Bootstrap podporuje niekoľko mediálnych dopytov v jedinom súbore, aby sa vaše projekty stali vhodnejšími na rôznych zariadeniach a rozlíšeniach obrazovky. Tu je zahrnuté:
Označenie | Šírka rozloženia | Šírka stĺpca | Šírka odkvapu |
---|---|---|---|
Smartfóny | 480px a menej | Fluidné stĺpce, žiadne pevné šírky | |
Smartfóny až tablety | 767px a menej | Fluidné stĺpce, žiadne pevné šírky | |
Portrétne tablety | 768px a viac | 42 pixelov | 20 pixelov |
Predvolené | 980 pixelov a viac | 60 pixelov | 20 pixelov |
Veľký displej | 1200 pixelov a viac | 70 pixelov | 30 pixelov |
Ak chcete zabezpečiť, aby zariadenia zobrazovali responzívne stránky správne, zahrňte metaznačku zobrazovanej oblasti.
- <meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
Bootstrap tieto mediálne dotazy automaticky nezahŕňa, ale ich pochopenie a pridanie je veľmi jednoduché a vyžaduje si minimálne nastavenie. Na zahrnutie responzívnych funkcií Bootstrapu máte niekoľko možností:
Prečo to jednoducho nezahrnúť? Pravdupovediac, nie všetko musí byť pohotové. Namiesto nabádania vývojárov, aby túto funkciu odstránili, považujeme za najlepšie ju povoliť.
- // Telefóny na šírku a dole
- @media ( max . šírka : 480 pixelov ) { ... }
- // Telefón na šírku až tablet na výšku
- @media ( max . šírka : 768 pixelov ) { ... }
- // Tablet na výšku na šírku a plochu
- @media ( min - width : 768px ) and ( max - width : 980px ) { ... }
- // Veľká pracovná plocha
- @media ( minimálna šírka : 1200 pixelov ) { .. }
Pre rýchlejší vývoj vhodný pre mobilné zariadenia použite tieto základné triedy nástrojov na zobrazenie a skrytie obsahu podľa zariadenia.
Používajte na obmedzenom základe a vyhnite sa vytváraniu úplne odlišných verzií tej istej lokality. Namiesto toho ich použite na doplnenie prezentácie každého zariadenia.
Môžete napríklad zobraziť <select>
prvok pre navigáciu na mobilných rozloženiach, ale nie na tabletoch alebo stolných počítačoch.
Tu je uvedená tabuľka tried, ktoré podporujeme, a ich vplyv na dané rozloženie dopytov na médiá (označené podľa zariadenia). Možno ich nájsť v responsive.less
.
Trieda | Telefóny480px a menej | Tablety767px a menej | Stolné počítače768px a viac |
---|---|---|---|
.visible-phone |
Viditeľné | Skryté | Skryté |
.visible-tablet |
Skryté | Viditeľné | Skryté |
.visible-desktop |
Skryté | Skryté | Viditeľné |
.hidden-phone |
Skryté | Viditeľné | Viditeľné |
.hidden-tablet |
Viditeľné | Skryté | Viditeľné |
.hidden-desktop |
Viditeľné | Viditeľné | Skryté |
Zmeňte veľkosť prehliadača alebo načítajte na rôznych zariadeniach, aby ste otestovali vyššie uvedené triedy.