Bootstrap е изграден върху адаптивни мрежи с 12 колони, оформления и компоненти.
Bootstrap използва определени HTML елементи и CSS свойства, които изискват използването на HTML5 doctype. Включете го в началото на всички ваши проекти.
- <!DOCTYPE html>
- <html lang = "en" >
- ...
- </html>
Bootstrap задава основен глобален дисплей, типография и стилове на връзки. По-конкретно ние:
margin
върху тялотоbackground-color: white;
наbody
@baseFontFamily
, @baseFontSize
, и @baseLineHeight
като наша типографска основа@linkColor
и приложете подчертаване на връзката само върху:hover
Тези стилове могат да бъдат намерени в scaffolding.less .
С Bootstrap 2 старият блок за нулиране е премахнат в полза на Normalize.css , проект на Николас Галахър и Джонатан Нийл , който също захранва HTML5 Boilerplate . Въпреки че използваме голяма част от Normalize в нашия reset.less , премахнахме някои елементи специално за Bootstrap.
Мрежовата система на Bootstrap по подразбиране използва 12 колони , което прави контейнер с ширина 940px без активирани функции за реагиране. С добавения адаптивен CSS файл решетката се адаптира да бъде широка 724px и 1170px в зависимост от прозореца за изглед. Под прозорците за изглед от 767 пиксела колоните стават плавни и се подреждат вертикално.
За просто оформление с две колони създайте .row
и добавете подходящия брой .span*
колони. Тъй като това е решетка с 12 колони, всяка .span*
обхваща определен брой от тези 12 колони и винаги трябва да добавя до 12 за всеки ред (или броя на колоните в родителския).
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
В този пример имаме .span4
и .span8
, което прави общо 12 колони и цял ред.
Преместете колони надясно с помощта на .offset*
класове. Всеки клас увеличава лявото поле на колона с цяла колона. Например, .offset4
преминава .span4
през четири колони.
- <div class = "row" >
- <div class = "span4" > ... </div>
- <div class = "span3 offset2" > ... </div>
- </div>
За да вложите съдържанието си в мрежата по подразбиране, добавете нова .row
и набор от .span*
колони в съществуваща .span*
колона. Вложените редове трябва да включват набор от колони, които се равняват на броя на колоните на своя родител.
- <div class = "row" >
- <div class = "span9" >
- Колона от ниво 1
- <div class = "row" >
- <div class = "span6" > Ниво 2 </div>
- <div class = "span3" > Ниво 2 </div>
- </div>
- </div>
- </div>
Системата с течна мрежа използва проценти вместо пиксели за ширини на колони. Той има същите възможности за реагиране като нашата система с фиксирана мрежа, осигурявайки правилни пропорции за ключови разделителни способности на екрана и устройства.
Направете всеки ред "течен", като промените .row
на .row-fluid
. Класовете на колоните остават абсолютно същите, което улеснява превключването между фиксирани и течни мрежи.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
Работи по същия начин като изместването на системата с фиксирана решетка: добавете .offset*
към всяка колона, за да изместите с толкова много колони.
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span4 offset2" > ... </div>
- </div>
Течните мрежи използват влагането по различен начин: всяко вложено ниво на колони трябва да добавя до 12 колони. Това е така, защото течната мрежа използва проценти, а не пиксели, за задаване на ширини.
- <div class = "row-fluid" >
- <div class = "span12" >
- Течност 12
- <div class = "row-fluid" >
- <div class = "span6" >
- Течност 6
- <div class = "row-fluid" >
- <div class = "span6" > Течност 6 </div>
- <div class = "span6" > Течност 6 </div>
- </div>
- </div>
- <div class = "span6" > Течност 6 </div>
- </div>
- </div>
- </div>
Осигурява общо оформление с фиксирана ширина (и по избор адаптивно) само със <div class="container">
задължителни.
- <тяло>
- <div клас = "контейнер" >
- ...
- </div>
- </body>
Създайте течна страница с две колони с — <div class="container-fluid">
чудесно за приложения и документи.
- <div class = "container-fluid" >
- <div class = "row-fluid" >
- <div class = "span2" >
- <!--Съдържание на страничната лента-->
- </div>
- <div class = "span10" >
- <!--Съдържание на тялото-->
- </div>
- </div>
- </div>
Включете адаптивния CSS във вашия проект, като включите правилния мета таг и допълнителен лист със стилове в рамките <head>
на вашия документ. Ако сте компилирали Bootstrap от страницата Customize, трябва да включите само мета тага.
- <meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
- <link href = "assets/css/bootstrap-responsive.css" rel = "stylesheet" >
Горе главата!Bootstrap не включва отзивчиви функции по подразбиране в момента, тъй като не всичко трябва да реагира. Вместо да насърчаваме разработчиците да премахнат тази функция, смятаме, че е най-добре да я активираме, ако е необходимо.
Медийните заявки позволяват персонализиран CSS въз основа на редица условия - съотношения, ширини, тип на дисплея и т.н. - но обикновено се фокусира около min-width
и max-width
.
Използвайте медийните заявки отговорно и само като начало на вашите мобилни аудитории. За по-големи проекти помислете за специални кодови бази, а не за слоеве от медийни заявки.
Bootstrap поддържа няколко медийни заявки в един файл, за да ви помогне да направите вашите проекти по-подходящи за различни устройства и разделителни способности на екрана. Ето какво е включено:
Етикет | Ширина на оформлението | Ширина на колоната | Ширина на улука |
---|---|---|---|
Голям дисплей | 1200px и нагоре | 70px | 30px |
По подразбиране | 980px и нагоре | 60px | 20px |
Таблетки за портрети | 768px и повече | 42px | 20px |
Телефони към таблети | 767px и по-долу | Течни колони, без фиксирани ширини | |
телефони | 480px и по-долу | Течни колони, без фиксирани ширини |
- /* Голям работен плот */
- @media ( мин - ширина : 1200px ) { ... }
- /* Портретен таблет към пейзажен и работен плот */
- @media ( мин . ширина : 768px ) и ( макс . ширина : 979px ) { ... }
- /* Хоризонтален телефон към портретен таблет */
- @media ( максимална ширина : 767px ) { ... } _
- /* Хоризонтални телефони и надолу */
- @media ( максимална ширина : 480px ) { ... } _
За по-бързо разработка, удобна за мобилни устройства, използвайте тези помощни класове за показване и скриване на съдържание по устройство. По-долу е дадена таблица с наличните класове и техния ефект върху дадено оформление на медийна заявка (обозначено по устройство). Те могат да бъдат намерени в responsive.less
.
Клас | телефони767px и по-долу | Таблетки979px до 768px | Настолни компютриПо подразбиране |
---|---|---|---|
.visible-phone |
Видими | Скрити | Скрити |
.visible-tablet |
Скрити | Видими | Скрити |
.visible-desktop |
Скрити | Скрити | Видими |
.hidden-phone |
Скрити | Видими | Видими |
.hidden-tablet |
Видими | Скрити | Видими |
.hidden-desktop |
Видими | Видими | Скрити |
Използвайте ограничено и избягвайте да създавате напълно различни версии на един и същи сайт. Вместо това ги използвайте, за да допълните представянето на всяко устройство. Отзивчивите помощни програми не трябва да се използват с таблици и като такива не се поддържат.
Преоразмерете браузъра си или заредете на различни устройства, за да тествате горните класове.
Зелените отметки показват, че класът е видим в текущия ви прозорец.
Тук зелените отметки показват, че класът е скрит в текущия ви прозорец.