Bootstrap je postaven na responzivní 12sloupcové mřížce. Zahrnuli jsme také rozvržení s pevnou a tekutou šířkou na základě tohoto systému.
Bootstrap využívá prvky HTML a vlastnosti CSS, které vyžadují použití doctype HTML5. Nezapomeňte jej zahrnout na začátek každé Bootstrapped stránky ve vašem projektu.
- <!DOCTYPE html>
- <html lang = "cs" >
- ...
- </html>
V rámci souboru scaffolding.less nastavujeme základní globální styly zobrazení, typografie a odkazu. Konkrétně my:
background-color: white;
nabody
@baseFontFamily
, @baseFontSize
, a @baseLineHeight
jako náš typografický základ@linkColor
a aplikujte podtržení odkazu pouze na:hover
Od Bootstrapu 2 se tradiční reset CSS vyvinul tak, aby využíval prvky z Normalize.css , projektu Nicolase Gallaghera , který také pohání HTML5 Boilerplate .
Nový reset lze stále nalézt v reset.less , ale kvůli stručnosti a přesnosti bylo odstraněno mnoho prvků.
Výchozí mřížkový systém poskytovaný v Bootstrapu využívá 12 sloupců , které se vykreslují v šířkách 724px, 940px (výchozí bez zahrnuty responzivní CSS) a 1170px. Pod výřezy o velikosti 767 pixelů se sloupce stanou tekutými a svisle se skládají.
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Jak je zde znázorněno, základní rozvržení lze vytvořit se dvěma „sloupci“, z nichž každý zahrnuje několik z 12 základních sloupů, které jsme definovali jako součást našeho mřížkového systému.
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span4 offset4" > ... </div>
- </div>
Se statickým (netekutým) mřížkovým systémem v Bootstrapu je vkládání snadné. Chcete-li vnořit obsah, stačí přidat nový .row
a sadu .span*
sloupců do existujícího .span*
sloupce.
Vnořené řádky by měly obsahovat sadu sloupců, jejichž součet odpovídá počtu sloupců nadřazeného prvku. Například dva vnořené .span3
sloupce by měly být umístěny v .span6
.
- <div class = "row" >
- <div class = "span6" >
- Sloupec úrovně 1
- <div class = "row" >
- <div class = "span3" > Úroveň 2 </div>
- <div class = "span3" > Úroveň 2 </div>
- </div>
- </div>
- </div>
Systém tekuté mřížky používá procenta pro šířky sloupců namísto pevných pixelů. Má také stejné varianty odezvy jako náš systém pevné mřížky, což zajišťuje správné proporce pro klíčová rozlišení obrazovky a zařízení.
Udělejte jakýkoli řádek tekutým jednoduše změnou .row
na .row-fluid
. Sloupce zůstávají stejné, takže přepínání mezi pevným a proměnlivým rozložením je velmi jednoduché.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Vnořování s proměnlivými mřížkami je trochu jiné: počet vnořených sloupců se nemusí shodovat s nadřazeným. Místo toho jsou vaše sloupce resetovány na každé úrovni, protože každý řádek zabírá 100 % nadřazeného sloupce.
- <div class = "row-fluid" >
- <div class = "span12" >
- Úroveň 1 sloupce
- <div class = "row-fluid" >
- <div class = "span6" > Úroveň 2 </div>
- <div class = "span6" > Úroveň 2 </div>
- </div>
- </div>
- </div>
Variabilní | Výchozí hodnota | Popis |
---|---|---|
@gridColumns |
12 | Počet sloupců |
@gridColumnWidth |
60 pixelů | Šířka každého sloupce |
@gridGutterWidth |
20 pixelů | Záporná mezera mezi sloupci |
Bootstrap obsahuje několik proměnných pro přizpůsobení výchozího systému mřížky 940 pixelů, jak je zdokumentováno výše. Všechny proměnné pro mřížku jsou uloženy v variables.less.
Úprava mřížky znamená změnu tří @grid*
proměnných a rekompilaci Bootstrapu. Změňte proměnné mřížky v souboru variables.less a použijte jeden ze čtyř zdokumentovaných způsobů rekompilace . Pokud přidáváte více sloupců, nezapomeňte přidat CSS pro ty v grid.less.
Přizpůsobení mřížky funguje pouze na výchozí úrovni, mřížce 940px. Abyste zachovali responzivní aspekty Bootstrapu, budete si muset také přizpůsobit mřížky v responsive.less.
Výchozí a jednoduché rozvržení na střed o šířce 940 pixelů pro téměř všechny webové stránky nebo stránky poskytované jedním <div class="container">
.
- <body>
- <div class = "container" >
- ...
- </div>
- </body>
<div class="container-fluid">
poskytuje flexibilní strukturu stránky, minimální a maximální šířku a levý postranní panel. Je to skvělé pro aplikace a dokumenty.
- <div class = "container-fluid" >
- <div class = "row-fluid" >
- <div class = "span2" >
- <!--Obsah postranního panelu-->
- </div>
- <div class = "span10" >
- <!--Obsah těla-->
- </div>
- </div>
- </div>
Dotazy na média umožňují vlastní CSS založené na řadě podmínek – poměry, šířky, typ zobrazení atd. – ale obvykle se zaměřují kolem min-width
a max-width
.
Používejte mediální dotazy zodpovědně a pouze jako začátek pro vaše mobilní publikum. U větších projektů zvažte vyhrazené báze kódu a ne vrstvy dotazů na média.
Bootstrap podporuje několik mediálních dotazů v jediném souboru, aby pomohly vytvořit vaše projekty vhodnější na různých zařízeních a rozlišeních obrazovky. Zde je zahrnuto:
Označení | Šířka rozložení | Šířka sloupce | Šířka okapu |
---|---|---|---|
chytré telefony | 480px a méně | Fluidní sloupce, žádné pevné šířky | |
Smartphony až tablety | 767px a méně | Fluidní sloupce, žádné pevné šířky | |
Portrétní tablety | 768px a více | 42 pixelů | 20 pixelů |
Výchozí | 980px a více | 60 pixelů | 20 pixelů |
Velký displej | 1200px a více | 70 pixelů | 30 pixelů |
Chcete-li zajistit, aby zařízení zobrazovala responzivní stránky správně, zahrňte metaznačku viewport.
- <meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
Bootstrap tyto dotazy na média automaticky nezahrnuje, ale jejich pochopení a přidání je velmi snadné a vyžaduje minimální nastavení. Máte několik možností, jak zahrnout responzivní funkce Bootstrapu:
Proč to prostě nezahrnout? Po pravdě řečeno, ne všechno musí reagovat. Místo nabádání vývojářů, aby tuto funkci odstranili, považujeme za nejlepší ji povolit.
- /* Telefony na šířku a dolů */
- @media ( max - width : 480px ) { ... }
- /* Telefon na šířku až tablet na výšku */
- @media ( max - width : 767px ) { ... }
- /* Tablet na výšku na šířku a plochu */
- @media ( min - width : 768px ) and ( max - width : 979px ) { ... }
- /* Velká plocha */
- @media ( min - width : 1200px ) { ... }
Pro rychlejší vývoj optimalizovaný pro mobily použijte tyto základní třídy nástrojů pro zobrazení a skrytí obsahu podle zařízení.
Používejte na omezeném základě a vyhněte se vytváření zcela odlišných verzí stejného webu. Místo toho je použijte k doplnění prezentace každého zařízení.
Můžete například zobrazit <select>
prvek pro navigaci na mobilních rozvrženích, ale ne na tabletech nebo počítačích.
Zde je uvedena tabulka tříd, které podporujeme, a jejich vliv na dané rozložení dotazu na média (označené podle zařízení). Lze je nalézt v responsive.less
.
Třída | Telefony480px a méně | Tablety767px a méně | Stolní počítače768px a více |
---|---|---|---|
.visible-phone |
Viditelné | Skrytý | Skrytý |
.visible-tablet |
Skrytý | Viditelné | Skrytý |
.visible-desktop |
Skrytý | Skrytý | Viditelné |
.hidden-phone |
Skrytý | Viditelné | Viditelné |
.hidden-tablet |
Viditelné | Skrytý | Viditelné |
.hidden-desktop |
Viditelné | Viditelné | Skrytý |
Změňte velikost prohlížeče nebo načtěte na různých zařízeních a otestujte výše uvedené třídy.
Zelená zaškrtnutí označují, že třída je viditelná ve vašem aktuálním výřezu.
Zde zelené zaškrtnutí označují, že třída je ve vašem aktuálním výřezu skryta.