Bootstrap je izgrađen na responzivnoj mreži od 12 stupaca. Također smo uključili rasporede fiksne i fluidne širine temeljene na tom sustavu.
Bootstrap koristi HTML elemente i CSS svojstva koja zahtijevaju upotrebu HTML5 doctype. Svakako ga uključite na početku svake Bootstrapped stranice u svom projektu.
- <!DOCTYPE html>
- <html lang = "hr" >
- ...
- </html>
Unutar datoteke scaffolding.less postavljamo osnovni globalni prikaz, tipografiju i stilove veza. Konkretno, mi:
background-color: white;
nabody
@baseFontFamily
, @baseFontSize
, i @baseLineHeight
kao našu tipografsku osnovu@linkColor
i primijenite podcrtane veze samo na:hover
Od Bootstrapa 2, tradicionalni reset CSS-a evoluirao je da koristi elemente iz Normalize.css , projekta Nicolasa Gallaghera koji također pokreće HTML5 Boilerplate .
Novi reset još uvijek se može pronaći u reset.less , ali s mnogim elementima uklonjenim radi sažetosti i točnosti.
Zadani sustav rešetki u Bootstrapu koristi 12 stupaca koji se prikazuju u širinama od 724 px, 940 px (zadano bez uključenog responzivnog CSS-a) i 1170 px. Ispod okvira za prikaz od 767 piksela, stupci postaju fluidni i slažu se okomito.
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Kao što je ovdje prikazano, osnovni izgled može se stvoriti s dva "stupca", od kojih svaki obuhvaća određeni broj od 12 temeljnih stupaca koje smo definirali kao dio našeg mrežnog sustava.
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span4 offset4" > ... </div>
- </div>
Sa statičnim (nefluidnim) grid sustavom u Bootstrapu, gniježđenje je jednostavno. Da biste ugniježdili svoj sadržaj, samo dodajte novi .row
i skup .span*
stupaca unutar postojećeg .span*
stupca.
Ugniježđeni redovi trebaju uključivati skup stupaca koji zbrajaju broj stupaca svog nadređenog. Na primjer, dva ugniježđena .span3
stupca trebaju biti smještena unutar .span6
.
- <div class = "row" >
- <div class = "span6" >
- Stupac razine 1
- <div class = "row" >
- <div class = "span3" > Razina 2 </div>
- <div class = "span3" > Razina 2 </div>
- </div>
- </div>
- </div>
Sustav fluidne mreže koristi postotke za širine stupaca umjesto fiksnih piksela. Također ima iste responzivne varijacije kao naš sustav fiksne mreže, osiguravajući odgovarajuće proporcije za ključne rezolucije zaslona i uređaje.
Učinite bilo koji red tekućim jednostavnom promjenom .row
u .row-fluid
. Stupci ostaju potpuno isti, što čini vrlo jednostavnim prebacivanje između fiksnih i fluidnih izgleda.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Gniježđenje s fluidnim mrežama malo je drugačije: broj ugniježđenih stupaca ne mora odgovarati roditelju. Umjesto toga, vaši se stupci poništavaju na svakoj razini jer svaki redak zauzima 100% nadređenog stupca.
- <div class = "row-fluid" >
- <div class = "span12" >
- Razina 1 stupca
- <div class = "row-fluid" >
- <div class = "span6" > Razina 2 </div>
- <div class = "span6" > Razina 2 </div>
- </div>
- </div>
- </div>
Varijabilna | Zadana vrijednost | Opis |
---|---|---|
@gridColumns |
12 | Broj stupaca |
@gridColumnWidth |
60 px | Širina svakog stupca |
@gridGutterWidth |
20 px | Negativni razmak između stupaca |
U Bootstrap je ugrađeno nekoliko varijabli za prilagodbu zadanog sustava rešetki od 940 piksela, dokumentiranih gore. Sve varijable za grid su pohranjene u variables.less.
Modificiranje mreže znači promjenu triju @grid*
varijabli i ponovno kompajliranje Bootstrapa. Promijenite varijable rešetke u variables.less i upotrijebite jedan od četiri dokumentirana načina za ponovno prevođenje . Ako dodajete više stupaca, svakako dodajte CSS za one u grid.less.
Prilagodba mreže radi samo na zadanoj razini, mreži od 940 piksela. Da biste zadržali responzivne aspekte Bootstrapa, također ćete morati prilagoditi rešetke u responsive.less.
Zadani i jednostavni raspored širine 940 piksela, centriran za bilo koje web mjesto ili stranicu koju pruža jedan <div class="container">
.
- <tijelo>
- <div class = "container" >
- ...
- </div>
- </body>
<div class="container-fluid">
daje fleksibilnu strukturu stranice, minimalnu i maksimalnu širinu i bočnu traku s lijeve strane. Izvrstan je za aplikacije i dokumente.
- <div class = "container-fluid" >
- <div class = "row-fluid" >
- <div class = "span2" >
- <!--Sadržaj bočne trake-->
- </div>
- <div class = "span10" >
- <!--Sadržaj tijela-->
- </div>
- </div>
- </div>
Medijski upiti dopuštaju prilagođeni CSS na temelju niza uvjeta—omjera, širine, vrste prikaza itd.—ali obično se fokusiraju na min-width
i max-width
.
Koristite medijske upite odgovorno i samo kao početak vaše mobilne publike. Za veće projekte razmislite o namjenskim bazama kodova, a ne o slojevima medijskih upita.
Bootstrap podržava pregršt medijskih upita u jednoj datoteci kako bi vaši projekti bili prikladniji za različite uređaje i razlučivosti zaslona. Evo što je uključeno:
Označiti | Širina rasporeda | Širina stupca | Širina oluka |
---|---|---|---|
pametni telefoni | 480px i niže | Fluidni stupci, bez fiksnih širina | |
Pametni telefoni na tablete | 767px i niže | Fluidni stupci, bez fiksnih širina | |
Tablete s portretima | 768px i više | 42 px | 20 px |
Zadano | 980px i više | 60 px | 20 px |
Veliki zaslon | 1200px i više | 70 px | 30 px |
Kako biste osigurali da uređaji ispravno prikazuju responzivne stranice, uključite meta oznaku okvira prikaza.
- <meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
Bootstrap ne uključuje automatski te medijske upite, ali njihovo razumijevanje i dodavanje vrlo je jednostavno i zahtijeva minimalno postavljanje. Imate nekoliko opcija za uključivanje responzivnih značajki Bootstrapa:
Zašto ga jednostavno ne uključiti? Istini za volju, ne mora sve biti osjetljivo. Umjesto da potičemo programere da uklone ovu značajku, smatramo da je najbolje omogućiti je.
- /* Vodoravni telefoni i dolje */
- @media ( max - width : 480px ) { ... }
- /* Vodoravni telefon na portretni tablet */
- @media ( max - width : 767px ) { ... }
- /* Portretni tablet u vodoravni i radnu površinu */
- @media ( min . širina : 768px ) i ( maks . širina : 979px ) { ... }
- /* Velika radna površina */
- @media ( min - širina : 1200px ) { ... }
Za brži razvoj prilagođen mobilnim uređajima koristite ove osnovne uslužne klase za prikazivanje i skrivanje sadržaja po uređaju.
Koristite na ograničenoj osnovi i izbjegavajte stvaranje potpuno različitih verzija iste stranice. Umjesto toga, koristite ih za nadopunu prezentacije svakog uređaja.
Na primjer, možete prikazati <select>
element za navigaciju na mobilnim izgledima, ali ne i na tabletima ili stolnim računalima.
Ovdje je prikazana tablica klasa koje podržavamo i njihov učinak na određeni raspored medijskog upita (označeno prema uređaju). Mogu se pronaći u responsive.less
.
Klasa | telefoni480px i niže | Tablete767px i niže | Stolna računala768px i više |
---|---|---|---|
.visible-phone |
Vidljivo | Skriven | Skriven |
.visible-tablet |
Skriven | Vidljivo | Skriven |
.visible-desktop |
Skriven | Skriven | Vidljivo |
.hidden-phone |
Skriven | Vidljivo | Vidljivo |
.hidden-tablet |
Vidljivo | Skriven | Vidljivo |
.hidden-desktop |
Vidljivo | Vidljivo | Skriven |
Promijenite veličinu preglednika ili učitajte na različitim uređajima kako biste testirali gore navedene klase.
Zelene kvačice označavaju da je klasa vidljiva u vašem trenutnom prozoru.
Ovdje zelene kvačice označavaju da je klasa skrivena u vašem trenutnom prozoru.