Переход с 2.x на 3.0

Bootstrap 3 не обратно совместим с v2.x. Используйте этот раздел как общее руководство по обновлению с v2.x до v3.0. Для более подробного обзора смотрите что нового в анонсе релиза v3.0.

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

В этой таблице показаны изменения стилей между v2.x и v3.0.

Bootstrap 2.x Bootstrap 3.0
.row-fluid .row
.span* .col-md-*
.offset* .col-md-offset-*
.brand .navbar-brand
.navbar .nav .navbar-nav
.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 .alert .alert-warning
.alert-error .alert-danger
.visible-phone .visible-xs
.visible-tablet .visible-sm
.visible-desktop Разделено на .visible-md .visible-lg
.hidden-phone .hidden-xs
.hidden-tablet .hidden-sm
.hidden-desktop Разделено на .hidden-md .hidden-lg
.input-block-level .form-control
.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

Что нового

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

Элемент Описание
Панели .panel .panel-default .panel-body .panel-title .panel-heading .panel-footer .panel-collapse
Группы списков .list-group .list-group-item .list-group-item-text .list-group-item-heading
Глифы .glyphicon
Jumbotron .jumbotron
Сетка extra small (<768px) .col-xs-*
Сетка small (≥768px) .col-sm-*
Сетка medium (≥992px) .col-md-*
Сетка large (≥1200px) .col-lg-*
Адаптивные классы (≥1200px) .visible-lg .hidden-lg
Отступы .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-sm .input-lg
Группы ввода .input-group .input-group-addon .input-group-btn
Form controls .form-control .form-group
Размеры групп кнопок .btn-group-xs .btn-group-sm .btn-group-lg
Текст в navbar .navbar-text
Заголовок navbar .navbar-header
Выровненные вкладки/таблетки .nav-justified
Адаптивные изображения .img-responsive
Контекстные строки таблицы .success .danger .warning .active .info
Контекстные панели .panel-success .panel-danger .panel-warning .panel-info
Модальное окно .modal-dialog .modal-content
Миниатюра изображения .img-thumbnail
Размеры wells .well-sm .well-lg
Ссылки в alert .alert-link

Что удалено

Следующие элементы были удалены или изменены в v3.0.

Элемент Удалено из 2.x Аналог в 3.0
Form actions .form-actions Нет
Search form .form-search Нет
Form group with info .control-group.info Нет
Фиксированные размеры input .input-mini .input-small .input-medium .input-large .input-xlarge .input-xxlarge Используйте .form-control и систему сетки вместо этого.
Блочный input .input-block-level Нет прямого аналога, но form controls похожи.
Inverse buttons .btn-inverse Нет
Fluid row .row-fluid .row (больше нет фиксированной сетки)
Обёртка для controls .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 Нет
Pill-based tabbable area .pill-content .tab-content
Pill-based tabbable area pane .pill-pane .tab-pane
Nav lists .nav-list .nav-header Нет прямого аналога, но группы списков и .panel-group похожи.
Inline help for form controls .help-inline Точного аналога нет, но .help-block похож.
Цвета прогресса не на bar-уровне .progress-info .progress-success .progress-warning .progress-danger Используйте .progress-bar-* на .progress-bar вместо этого.

Дополнительные замечания

Другие изменения в v3.0 не так очевидны. Базовые классы, ключевые стили и поведения были изменены для гибкости и подхода mobile first. Вот частичный список:

  • По умолчанию текстовые элементы форм теперь имеют минимальное оформление. Для цветов фокуса и скруглённых углов применяйте класс .form-control к элементу.
  • Текстовые элементы форм с классом .form-control теперь по умолчанию занимают 100% ширины. Оборачивайте input в <div class="col-*"></div> для управления шириной.
  • .badge больше не имеет контекстных классов (-success, -primary и т.д.).
  • .btn теперь также должен использовать .btn-default для получения "обычной" кнопки.
  • .row теперь всегда fluid.
  • Изображения больше не адаптивны по умолчанию. Используйте .img-responsive для fluid-<img>.
  • Иконки теперь .glyphicon и являются шрифтовыми. Для иконок требуется базовый икон-класс (например, .glyphicon .glyphicon-asterisk).
  • Typeahead удалён, используйте Twitter Typeahead.
  • Разметка модальных окон значительно изменилась. .modal-header, .modal-body и .modal-footer теперь обёрнуты в .modal-content и .modal-dialog для лучшей мобильной стилизации и поведения. Также больше не нужно применять .hide к .modal в разметке.
  • С версии v3.1.0 HTML, загружаемый через опцию remote модального окна, теперь вставляется в .modal-content (с v3.0.0 по v3.0.3 — в .modal), а не только в .modal-body. Это позволяет легко менять заголовок и футер модального окна, а не только тело.
  • Чекбоксы и радио-кнопки в button.js теперь используют data-toggle="buttons" вместо data-toggle="buttons-checkbox" или data-toggle="buttons-radio" в разметке.
  • JavaScript-события теперь имеют namespace. Например, для обработки события "show" модального окна используйте 'show.bs.modal'. Для вкладок "shown" — 'shown.bs.tab' и т.д.

Для дополнительной информации по обновлению до v3.0 и примеров кода от сообщества смотрите Bootply.