Есть несколько способов скачать и начать работать с Bootstrap 3, их различие в количестве требуемого опыта к разработчику и поставленных задач перед проектом. Прочитайте ниже и определите способ подходящий именно Вам и Вашему проекту.

Скачать полностью исходный код

Пока Bootstrap 3.0.0 находится в разработке Вы можете скачать исходный код (включая скомпилированные и минифицированные версии CSS и JavaScript файлы, которые находятся в папке dist/).

Скачать Bootstrap 3

Опции для скачивания

Скачать последнюю версию исходного кода

Получите оригинальные CSS и JavaScript файлы скачав ветку разработки с GitHub.

Клонировать или fork'нуть ветку с GitHub

Клонируйте или fork'ните ветку разработки Bootstrap 3 в свой репозиторий на GitHub.

Установить через Bower

Установите и работайте с оригинальными CSS и JavaScript файлами используя Bower.

$ bower install bootstrap

Используйте Bootstrap CDN

Ребята из NetDNA предоставили свой CDN (сеть доставки контента) для доставки файлов Bootstrap'а. Для использования CDN измените ссылки на файлы, подробнее на Bootstrap CDN так же ссылки указаны ниже.

1 <!-- Latest compiled and minified CSS -->
2 <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0-wip/css/bootstrap.min.css">
3 
4 <!-- Latest compiled and minified JavaScript -->
5 <script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0-wip/js/bootstrap.min.js"></script>

LESS

Если Вы скачали оригинальные файлы, Вам необходимо скомпилировать LESS-файлы в CSS. Bootstrap официально поддерживает только Recess, CSS Twitter'а основан на less.js.

После скачивания Вы найдете следующие файлы, логически объединенные в папки в минифицированных и нет версиях.

После скачивани, разархивируйте и Вы увидите (скомпилированные) Bootstrap-файлы:

bootstrap/
├── css/
│   ├── bootstrap.css
│   ├── bootstrap.min.css
├── js/
│   ├── bootstrap.js
│   ├── bootstrap.min.js

Это стандартный вид Bootstrap'а: скомпилированные файлы - готовые к использованию в Вашем проекте. Мы предоставляем скомпилированные CSS и JS (bootstrap.*) файлы, вместе с минифицированными CSS и JS (bootstrap.min.*) файлами.

Требуется jQuery

Пожалуйста имейте ввиду что все JavaScript-плагины требуют jQuery для работы, как в примере базовый шаблон.

Начните работать с базового HTML шаблона, или сразу перейдите к примерам которые мы начали за Вас.

Скопируйте и вставьте HTML-код ниже для начала разработки Вашего проекта на Bootstrap.

<!DOCTYPE html>
<html>
  <head>
    <title>Bootstrap 101 Template</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
  </head>
  <body>
    <h1>Привет, мир!</h1>

    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
    <script src="//code.jquery.com/jquery.js"></script>
    <!-- Include all compiled plugins (below), or include individual files as needed -->
    <script src="js/bootstrap.min.js"></script>

    <!-- Enable responsive features in IE8 with Respond.js (https://github.com/scottjehl/Respond) -->
    <script src="js/respond.js"></script>
  </body>
</html>

Ищите вдохновение и больше примеров?

Посмотрите на Репозиторий с примерами на GitHub, или посмотрите на них в живую в своем браузере.

Bootstrap создан для работы в последних версиях десктопных и мобильных браузерах, это означает что старые браузеры будут ограничены по стилю в некоторых моментах, а также по функционалу или модулям.

Поддерживаемые браузеры

Bootstrap 3 поддерживает следующие браузеры в последней версии:

  • Chrome (Mac, Windows, iOS, и Android)
  • Safari (Mac и iOS только)
  • Firefox (Mac, Windows)
  • Internet Explorer
  • Opera (Mac, Windows)

Неофициально, Bootstrap должен работать в Chromium для Linux и в Internet Explorer 7 версии, но тем не менее официальной поддержки этих браузеров - НЕТ.

Internet Explorer 8 и 9

Internet Explorer 8 и 9 так же поддерживаются, но тем не менее, множество CSS3-правил не работает корректно, например: закругленные углы и тени - не работают в IE8. Так же атрибут placeholder не работает в данных браузерах.

В дополнение, в Internet Explorer 8 обязательно использование respond.js для поддержки media-query - правил.

IE - Режим совместимости

Bootstrap не поддерживает старый режим совместимости в Internet Explorer. Для IE используйте meta тег:

<meta http-equiv="X-UA-Compatible" content="IE=edge">

Посмотрите обсуждение этого вопроса на StackOverflow для получения большей информации.

Windows Phone 8 и Internet Explorer 10

Internet Explorer 10 не делает различия устройств по ширине от ширины viewport'а, и таким образом не правильно применяет media queries в CSS. Для исправления этой проблемы используйте следующий CSS и JavaScript пока Microsoft не полечить эту проблему самостоятельно (что произойдет очень не скоро, если вообще произойдет).

@-webkit-viewport   { width: device-width; }
@-moz-viewport      { width: device-width; }
@-ms-viewport       { width: device-width; }
@-o-viewport        { width: device-width; }
@viewport           { width: device-width; }
if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
  var msViewportStyle = document.createElement("style");
  msViewportStyle.appendChild(
    document.createTextNode(
      "@-ms-viewport{width:auto!important}"
    )
  );
  document.getElementsByTagName("head")[0].appendChild(msViewportStyle);
}

Для большей информации почитайте статью Windows Phone 8 и Device-Width (Англ.).

Safari - округление значений

В последней версии Safari для Mac, имеется проблема с рендерингом не целых значений с запятой в классах .col-*-1, это означает что при использовании 12 колонок Вы обнаружите, что они несколько короче (уже) по ширине. Посмотрите обсуждение вопроса #9282 на GitHub. У Вас есть несколько опции для исправления ситуации:

  • Добавьте класс .pull-right к последней колонке
  • Перепишите правила ширины колонок для Safari (более тяжелый вариант)

Как только мы найдем легкий способ полечить проблему вы увидите ее решение - следите за вопросом #9282 на GitHub.

Модальные окна и мобильные устройства

Поддержка для overflow: hidden в элементе <body> ограниченна для iOS и Android. Это вызовет скроллинг в элементе <body> при прокрутке Модального окна.

Официально мы не поддерживаем сторонние плагины или дополнения, но у нас есть несколько советов по популярным вопросам.

Google Maps

Если Вы используете Google Maps совместно с Bootstrapped в Вашем проекте, Вы возможно столкнетесь с проблемой отображения из-за использования правила * { box-sizing: border-box; }. Pанее Вы так же могли столкнуться с проблемой связанной с правилом max-width для картинок. Следующий сниппет решает эти проблемы.

/* Fix Google Maps canvas
 *
 * Wrap your Google Maps embed in a `.google-map-canvas` to reset Bootstrap's
 * global `box-sizing` changes. You may optionally need to reset the `max-width`
 * on images in case you've applied that anywhere else. (That shouldn't be as
 * necessary with Bootstrap 3 though as that behavior is relegated to the
 * `.img-responsive` class.)
 */

.google-map-canvas,
.google-map-canvas * { .box-sizing(content-box); }

/* Optional responsive image override */
img { max-width: none; }

Bootstrap следует всем web-стандартам, с минимальным количеством усилий, для тех кто нуждается в использовании ТСР.

Скрытие навигации

Если Ваша навигация содержит множество ссылок и идет перед основным контентом в DOM, добавьте ссылку Перейти к контенту сразу после открытия тега <body>. (по-читайте зачем)

<body>
  <a href="#content" class="sr-only">Перейти к контенту</a>
  <div class="container" id="content">
    Контент.
  </div>
</body>

Вложенные заголовки

Хорошим дополнение будет наследование элементов <header>. Раздел 508 утверждает, что Ваш самый большой заголовок должен быть h1, следующий <h2>, и т.д. Это достаточно тяжело на практике, но если Ваш самый большой заголовок меньше чем стандартный в Bootstrap's - 38px, Вам будет необходимо переписать правила для всех последующих заголовков.

Дополнительная информация по теме:

Bootstrap распространяется по лицензии Apache 2, а права (copyright) принадлежат 2013 Twitter. Короче, Вам необходимо соблюдать след. правила:

Вы можете:

  • Скачивать и использовать Bootstrap, полностью или частично, для частных, корпоративных или коммерческих целях
  • Использовать и создавать свои сборки или дистрибутивы

Вы не можете:

  • Распространять BS или его часть без ссылки на источник
  • Использовать торговые марки принадлежащие Twitter в любом виде

Вы обязаны:

  • Включить лицензию из оригинального Twitter Bootstrap в вашу сборку или дистрибутив
  • Дать четкое присвоение и ссылку на Twitter в вашей сборке или дистрибутиве содержащий элементы Bootstrap

Вы не обязаны:

  • Включать ссылку на себя при внесении модификация в исходном коде
  • Отправлять в Bootstrap изменения, которые Вы сделали в своем проекте на Bootstrap (но feedback приветствуется)

Лицензия Bootstrap находится в репозитории - Вы можете ознакомится с лицензией для получения большей информации.

Настройка BS лучше всего достигается, когда вы рассматриваете его как дополнение в развитии вашего проекта. Это гарантирует, последующие обновления как можно проще в то же время Вы сможете самостоятельно ознакомиться с тонкостями фреймворка.

После скачивания и включения файлов Bootstrap'а в Ваш проект, Вы можете перейти к кастомизации. Для этого, - создайте новый файл стилей (LESS или CSS) для сохранения Ваших изменений.

Скомпилированный или минифицированный?

Если Вы не планируете читать Ваш код, - используйте минифицированный. По сути это тот же самый код только компактный (без пробелов и переноса строк). Меньший размер - лучше, особенно при использовании на продакшене.

Настройка компонентов

Существует несколько способов кастомизции компонентов, но все из можно разделить на два: легкое изменение внешнего вида и полная переработка.

Легкое изменение внешнего вида - это изменение цвета, шрифта, размера. В качестве примера мы разберем создание кнопки, .btn-ttc, которую мы используем в документации.

Вместо использования кнопок поставляемых в Bootstrap, которые требуют использования класса, .btn, мы создадим наш собственный класс - .btn-ttc.

<button type="button" class="btn btn-ttc">Сохранить изменения</button>

В кастомный CSS-файл добавьте следующие правила:

/* Custom button
-------------------------------------------------- */

/* Override base .btn styles */
/* Apply text and background changes to three key states: default, hover, and active (click). */
.btn-ttc,
.btn-ttc:hover,
.btn-ttc:active {
  color: white;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  background-color: #007da7;
}

/* Apply the custom-colored gradients */
/* Note: you'll need to include all the appropriate gradients for various browsers and standards. */
.btn-ttc {
  background-repeat: repeat-x;
  background-image: linear-gradient(top, #009ED2 0%, #007DA7 100%);
  ...
}

/* Set the hover state */
/* An easy hover state is just to move the gradient up a small amount. Add other embellishments as you see fit. */
.btn-ttc:hover {
  background-position: 0 -15px;
}

Настройка компонентов Bootstrap'а занимает время, но при этом это достаточно просто. Посмотрите на исходный код, изменяйте и дублируйте селекторы, в соответствии с Вашей модификацией. Подключите Ваш CSS-файл после Bootstrap'овских файлов для того что бы переписать правила. Шпаргалка, для изменения компонентов:

  • Для каждого элемента, который вы хотите настроить, найдите ​​код в скомпилированном CSS. Скопируйте и вставьте селектор для компонента как есть. Например, для настройки панели навигации, просто используйте .navbar.
  • Добавляйте все кастомные CSS-правила в отдельные файлы для каждого селектора взятого из исходного кода. Нет необходимости в использовании дополнительных классов или !important.
  • Все CSS-файлы идущие после Bootstrap'овских файлов будут переписывать правила фреймовка.

Альтернативные методы настройки

Это не рекомендуется для новичков в работе с Bootstrap, Вы можете использовать один из двух альтернативных способов кастомизации. Первый это изменение .less файлов, второй сопоставление LESS кода с Вашими классами через mixins.

Устранение наворотов

Не все сайты и приложения нуждаются в том что поставляется в Bootstrap, особенно на продакшене где траффик и все приложения играют большую материальную роль. Мы предлагаем выбрать только необходимое среди плагинов и компонентов через Изменить и скачать.