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

Скомпилированные CSS, JS, и шрифты

Самый быстрый способ начать работать с Bootstrap 3 это скачать скомпилированные CSS, JavaScript, и шрифты. Без документации и исходного кода.

Скачать скомпилированные файлы Bootstrap 3

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

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

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

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

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

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

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

$ bower install bootstrap

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

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

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css">

<!-- Optional theme -->
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap-theme.min.css">

<!-- Latest compiled and minified JavaScript -->
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>

Компиляция LESS файлов Bootstrap'а

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

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

Требуется jQuery

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

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

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

bootstrap/
├── css/
│   ├── bootstrap.css
│   ├── bootstrap.min.css
│   ├── bootstrap-theme.css
│   └── bootstrap-theme.min.css
├── js/
│   ├── bootstrap.js
│   └── bootstrap.min.js
└── fonts/
    ├── glyphicons-halflings-regular.eot
    ├── glyphicons-halflings-regular.svg
    ├── glyphicons-halflings-regular.ttf
    └── glyphicons-halflings-regular.woff

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

Исходный код

Исходный код Bootstrap'а так же включает в себя скомпилированные CSS, JavaScript файлы, и шрифты, но в дополнение Вы получаете исходники в виде LESS-файлов, JavaScript, и документацию. Обычно структура архива с исходным кодом выглядит след. образом:

bootstrap/
├── less/
├── js/
├── fonts/
├── dist/
│   ├── css/
│   ├── js/
│   └── fonts/
├── docs-assets/
├── examples/
└── *.html

Папки less/, js/, и fonts/ содержат исходный код для CSS, JS, и шрифтов. Папка dist/ содержит скомпилированный вариант исходного кода. Папки docs-assets/, examples/, и все *.html файлы относятся к документации по Bootstrap 3.

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

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

<!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">

    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
      <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
    <![endif]-->
  </head>
  <body>
    <h1>Привет, мир!</h1>

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

Все примеры построены на стандартном шаблоне Bootstrap'а - см. выше. Так же обратите внимание на Кастомизация Bootstrap тля доп. информации по созданию Вашего уникального дизайна Bootstrap 3.

Шаблон Starter (Стартовый)

Ничего лишнего: Скомпилированный CSS и JavaScript, совмнстно со стандартным контейнером.

Шаблон Grids (Колонки)

Пример по использованию колонок. Создание много-колоночного дизайна, вложение колонок и др.

Шаблон Jumbotron (Промо)

Базовый "Промо"-шаблон, с использованием колонок и навигационного бара.

Шаблон: узкий jumbotron

"Промо"-шаблон с использованием минимальной ширины контейнера.

Навигационный бар

Самый, что ни на есть базовый шаблон с навигационным баром и примером по использованию контента и текста.

Статичный нав. бар

Самый, что ни на есть базовый шаблон со статичным навигационным баром и примером по использованию контента и текста.

Фиксированный нав. бар

Самый, что ни на есть базовый шаблон с фиксированным навигационным баром и примером по использованию контента и текста.

Страница входа

Кастомный вариант страницы с формой входа или регистрации.

Фиксированный подвал

Подвал всегда находится внизу viewport'а, даже в случае когда контент занимает не всю область.

Подвал и нав. бар

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

Выровненная навигация

Пример с 100% в ширину нав. баром. Внимание! Есть баг в движке WebKit.

Горизонтальное меню

Пример горизонтального меню в Bootstrap 3.

Карусель

Нестандартное решение по совмещению карусели и нав. бара.

Неадаптивный Bootstrap 3

Пример отключения адаптивности в Bootstrap 3, в соотвествии с документацией.

Bootstrap 3

Пример использования всех элементов Bootstrap 3 на одной странице.

Bootstrap 3 автоматически подгоняет контент страницы под размер экрана. Вы можете отключить адаптивность Bootstrap 3. Шаги по отключению адаптивности описаны ниже, так же посмотрите неадаптивный пример.

Шаги по отключению адаптивности в Bootstrap 3

  1. Уберите тег <meta> описывающий поведение viewport, описанный в документации по CSS
  2. Перепишите значение width класса .container всех уровней сетки, на необходимую Вашему проекту ширину, например: width: 970px !important;. Убедитесь, что эти правила прописаны после подключения CSS-файлов Bootstrap 3. Вы также можете убрать !important через медиа-запросы или через свое правило, типа: selector-fu.
  3. При использовании навигационного бара, уберите элементы отвечающие за сворачивание или разворачивание панели.
  4. В сетке шаблона используйте классы .col-xs-* одновременно со средним / большим классом или вместо него. В случае просмотра на очень маленьких экранах сетка может быть подогнана под конкретное разрешение.

Не смотря на отключение адаптивности описанным способом выше, для совместимости с IE8 (Так как медиа-запросы все равно присутвуют в CSS-файлах) - Вам понадобится подключить файл Respond.js.
Это просто отключит "мобильную версию" в Bootstrap 3.

Пример шалона на Bootstrap 3 с отключенной адаптивностью

В следующем примере выполнены все шаги, описанные выше.
Обратите внимание на исходный код, и правила прописанные в отдельном CSS-файле.

Посмтотреть пример

Bootstrap 3 порядком отличается от версии v2.x. Перед тем как начать переход от v2.x к v3.0.x прочитайте информацию ниже, для ознакомления с нововведениями и изменениями.

Основные изменения в классах

Сводная таблица об изменении в наименовании классов. Сравнении версии v2.x к v3.0.x

Bootstrap 2.x Bootstrap 3.0.x
.container-fluid .container
.row-fluid .row
.span* .col-md-*
.offset* .col-md-offset-*
.brand .navbar-brand
.nav-collapse .navbar-collapse
.nav-toggle .navbar-toggle
.btn-navbar .navbar-btn
.hero-unit .jumbotron
.icon-* .glyphicon .glyphicon-*
.btn .btn .btn-default
.btn-mini .btn-xs
.btn-small .btn-sm
.btn-large .btn-lg
.alert-error .alert-danger
.visible-phone .visible-xs
.visible-tablet .visible-sm
.visible-desktop Split into .visible-md .visible-lg
.hidden-phone .hidden-xs
.hidden-tablet .hidden-sm
.hidden-desktop Split into .hidden-md .hidden-lg
.input-small .input-sm
.input-large .input-lg
.control-group .form-group
.control-group.warning .control-group.error .control-group.success .form-group.has-*
.checkbox.inline .radio.inline .checkbox-inline .radio-inline
.input-prepend .input-append .input-group
.add-on .input-group-addon
.img-polaroid .img-thumbnail
ul.unstyled .list-unstyled
ul.inline .list-inline
.muted .text-muted
.label .label .label-default
.label-important .label-danger
.text-error .text-danger
.table .error .table .danger
.bar .progress-bar
.bar-* .progress-bar-*
.accordion .panel-group
.accordion-group .panel .panel-default
.accordion-heading .panel-heading
.accordion-body .panel-collapse
.accordion-inner .panel-body

Нововведения

Мы добавили несколько новых элементов и изменили некоторые из уже существующих.

Элемент Описание
Panels (Панели) .panel .panel-default .panel-body .panel-title .panel-heading .panel-footer .panel-collapse
List groups (Группы списков) .list-group .list-group-item .list-group-item-text .list-group-item-heading
Glyphicons (Иконки) .glyphicon
Jumbotron (Промо) .jumbotron
Очень маленькая сетка (<768px) .col-xs-*
Маленькая сетка (≥768px) .col-sm-*
Средняя сетка (≥992px) .col-md-*
Большая сетка (≥1200px) .col-lg-*
Классы дополняющие респонсив функцонал (≥1200px) .visible-lg .hidden-lg
Offsets (Отступы) .col-sm-offset-* .col-md-offset-* .col-lg-offset-*
Push .col-sm-push-* .col-md-push-* .col-lg-push-*
Pull .col-sm-pull-* .col-md-pull-* .col-lg-pull-*
Input (Группы элементов формы) .input-group .input-group-addon .input-group-btn
Form controls (Элементы управления формы) .form-control .form-group
Button group sizes (Размеры сгруппированных кнопок) .btn-group-xs .btn-group-sm .btn-group-lg
Navbar text (Текст навигационного бара) .navbar-text
Navbar header (Заголовок навигационного бара) .navbar-header
Justified tabs / pills (Выровненные в 100% ширины вкладки / кнопки навигации) .nav-justified
Responsive images (Адаптивные картинки) .img-responsive
Contextual table rows (Контекстное выделение строк таблицы) .success .danger .warning .active
Contextual panels (Контекстное выделение панелей) .panel-success .panel-danger .panel-warning .panel-info
Modal (Модальное окно) .modal-dialog .modal-content
Thumbnail image (Миниатюры картинок) .img-thumbnail
Well sizes (Размеры элемента .well) .well-sm .well-lg
Alert links (Ссылки в сообщениях) .alert-link

Удаленные элементы и классы

Следующие элементы и классы были убраны из Bootstrap 3.0.

Элемент Класс в 2.x Класс в 3.0.x
Form actions (Действия формы) .form-actions Отсутвует
Search form (Поисковая форма) .form-search Отсутвует
Form group with info .control-group.info Отсутвует
Fluid container (Резиновый контейнер) .container-fluid .container (В Bootstrap 3 отсутвует фиксированная сетка - любая сетка в TWBS3 всегда резиновая)
Fluid row (Резиновый .row) .row-fluid .row (В Bootstrap 3 отсутвует фиксированная сетка - любая сетка в TWBS3 всегда резиновая)
Controls wrapper .controls Отсутвует
Controls row .controls-row .row или .form-group
Navbar inner .navbar-inner Отсутвует
Navbar vertical dividers (Вертикальный разделитель) .navbar .divider-vertical Отсутвует
Dropdown submenu (Выпадающее подменю) .dropdown-submenu Отсутвует
Tab alignments (Выравниване вкладок) .tabs-left .tabs-right .tabs-below Отсутвует
Nav lists .nav-list .nav-header Отсуствует, но Вы можете использовать аналог - группы списков и .panel-group.

Примечание

Другие изменения в Bootstrap 3 не заметны с первого взгляда. Основные и ключеввые классы их внешний вид и поведение было подведено под концепцию Мобильные устройства на первом месте. См. список ниже:

  • По умолчанию текстовые элементы форм и ввода имеют минимальное количество применимых CSS-правил. Для цвета на :focus закругления углов, примените класс .form-control.
  • Текстовые элементы форм и ввода с классом .form-control, теперь всегда 100% в ширину по умолчанию. Поместите поля ввода в родительский элемент с классом <div class="col-*"></div> для контроля ширины элемента.
  • У класса .badge мы убрали контектные значения (-success,-primary,etc..).
  • Класс .btn так же должен быть дополнен классом .btn-default для получения "default" (стандартного / дефлотного) стиля кнопки.
  • Классы .container и .row - Теперь всегда резиновые.
  • Изображения больше не адаптивные по умолчанию. Используйте класс .img-responsive для адаптсции размера элемента <img>.
  • Иконки теперь имеют класс - .glyphicon, так же теперь они основаны на шрифе (т.е. векторные). Иконки так же должны быть дополнены двумя классами (прим.: .glyphicon .glyphicon-asterisk).
  • JS-Плагин: "Typeahead" был удален, в пользу Twitter Typeahead.
  • Разметка модального окна так же подверглась изменениям. Классы .modal-header, .modal-body, and .modal-footer теперь располагаются в родительском .modal-content и .modal-dialog для наилучшего использования в мобильных устройствах.
  • HTML подгружаемый в Модальное Окно теперь втавляется в элемент с классом .modal, ранее это происходило в .modal-body. Это позволяет Вам менять Заголовок и Подвал Модального Окна, а не только текст и контент внутри.
  • События JavaScript теперь находятся в своем пространстве имен. Например, для отслеживания события Модального окна "show", используйте 'show.bs.modal'. Для вкладок "shown" используйте 'shown.bs.tab', и т.п.

Дополнительную информацию об обновлениях читайте в сообществе Bootply.

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

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

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

  • Chrome (Mac, Windows, iOS, и Android)
  • Safari (Mac и iOS only, так как версия под Windows больше не обновляется)
  • Firefox (Mac, Windows)
  • Internet Explorer
  • Opera (Mac, Windows)

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

Internet Explorer 8 и 9

Internet Explorer 8 и 9 так же поддерживаются, но тем не менее, множество CSS3-правил, HTML5-элементов не работает корректно. Дополнительно, что бы исправить эту проблему - Internet Explorer 8 нуждается в использовании Respond.js для поддержки медиа-запросов.

Функционал Internet Explorer 8 Internet Explorer 9
border-radius Не поддерживается Поддерживается
box-shadow Не поддерживается Поддерживается
transform Не поддерживается Поддерживается, с префиксом -ms
transition Не поддерживается
placeholder Не поддерживается

Посетите проект Can I use... для детельного описания поддержки CSS3 и HTML5 различными браузерами.

Internet Explorer 8 и Respond.js

Остерегайтесь следующих моментов при использовании Respond.js для Internet Explorer 8 при разработке и особенно при выводе проекта на продакшн.

Respond.js и cross-domain CSS

Использование Respond.js с CSS-файлами расположенными на других доменных именах и/или на субдоменах (например на CDN) требует дополнительных настроек. Подробнее в документации по Respond.js.

Respond.js и file://

В соотвествии с правилами безопастности браузеров, Respond.js не работает на страницах просматреваемых через file:// протокол (например при просмотре HTML-файла на локальной машине). Для теста IE8, просматривате сраницы только через HTTP(S) протокол. Подробнее в документации по Respond.js.

Respond.js и @import

Respond.js не работает с CSS, который ссылается через @import. Известно что Drupal (в частных конфигурациях) использует @import. Подробнее в документации по Respond.js.

Internet Explorer 8 и box-sizing

IE8 не полноценно поддерживает box-sizing: border-box; особенно в сочетании с правилами min-width, max-width, min-height, или max-height. На этот случай, начиная с версии v3.0.1, мы не указываем max-width для классов .container.

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

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

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

Данный тег включен во все примеры Bootstrap 3 выше.

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

Internet Explorer 10 в Windows 8 и Windows Phone 8

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 (Англ.).

Внимание! Мы включили эту информацию в документацию по Bootstrap 3 только как пример.

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

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

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

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

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

Overflow и scrolling (скроллинг)

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

Виртуальная клавиатура

Также, при использовании елементов ввода (input, textarea и т.п.) в модальном окне – у iOS есть особенность что, не обновляется фискированная позиция элементов когда вызвана виртуальная клавиатура. Здесь есть несколько обходных путей, включающие приминение правила position: absolute или устновка таймера фокуса, который пытаться корректировать положение вручную. Оба решения не поддерживаются Bootstrap 3, поэтому Вы свободны в выборе решения, которое является лучшим для Вашего приложения.

Масштабирование в браузере (zoom)

При масштабировании страницы неизбежно возникновение артефактов рендеринга в некоторых компонентах, как в Bootstrap 3, так и в любом другом случае. В зависимости от задачи, у нас есть возможность исправлять частные проблемы (во-первых используйте Google или Yandex, в случае отсутсвия решения в сети вы можете завести ветку обсуждения на GitHub). Тем не менее, мы склонны игнорировать их, поскольку они зачастую не имеют прямого решения, кроме часто повторяющихся обходных путей.

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

Box-sizing

Множество сотронних плагинов, например: Google Maps и Google Custom Search Engine, конфликтуют с Bootstrap 3 в правиле * { box-sizing: border-box; }, из-за чего правило устанавливающее padding не применяется и не влияет на ширину элемента. Подробнее на CSS Tricks.

В зависимости от контекста, есть несколько способов решить данную проблему:

/* Box-sizing resets
 *
 * Reset individual elements or override regions to avoid conflicts due to
 * global box model settings of Bootstrap. Two options, individual overrides and
 * region resets, are available as plain CSS and uncompiled LESS formats.
 */

/* Вариант 1A: Переписать CSS-правила для конкретного элемента */
.element {
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
}

/* Вариант 1B: Переписать правила для конкретного элемента через Bootstrap 3 LESS mixin */
.element {
  .box-sizing(content-box);
}

/* Вариант 2A: Сбросить правила через CSS */
.reset-box-sizing,
.reset-box-sizing *,
.reset-box-sizing *:before,
.reset-box-sizing *:after {
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
}

/* Вариант 2B: Сбросить правила через LESS mixin */
.reset-box-sizing {
  &,
  *,
  *:before,
  *:after {
    .box-sizing(content-box);
  }
}
.element {
  .reset-box-sizing();
}

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) для сохранения Ваших изменений.

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

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

Далее, включайте любой компонент Bootstrap 3 и HTML контент в любой шаблон ил примеров выше или свой собственный. Изначально уделите время дизайну, и продумайте сейчас весь контент, его расположение и функционал, это позволит Вам не терять время на перемисывание шаблона в будующем.

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

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

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

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

Код нашей новой кнопки будет выглядеть след. образом:

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

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

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

/* Переписываем стандартные стили класса .btn */
/* Применяем изменения к различным состояниям кнопки: default, hover, и 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;
}

/* Применяем новый градиент */
/* Замечание: Вам необходимо включить градиент для всех браузеров в соотвествии со стандартами. */
.btn-ttc {
  background-repeat: repeat-x;
  background-image: linear-gradient(top, #009ED2 0%, #007DA7 100%);
  ...
}

/* Добавляем правила для состояния hover */
.btn-ttc:hover {
  background-position: 0 -15px;
}

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

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

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

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

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

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