Migração do 2.x para 3.0

O Bootstrap 3 não é compatível com versões anteriores do v2.x. Use esta seção como um guia geral para atualizar do v2.x para v3.0. Para uma visão mais ampla, consulte o que há de novo no anúncio de lançamento do v3.0.

Principais mudanças de classe

Esta tabela mostra as mudanças de estilo entre v2.x e 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 Split into .visible-md .visible-lg
.hidden-phone .hidden-xs
.hidden-tablet .hidden-sm
.hidden-desktop Split into .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

O que há de novo

Adicionamos novos elementos e alteramos alguns existentes. Aqui estão os estilos novos ou atualizados.

Elemento Descrição
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
Extra small grid (<768px) .col-xs-*
Small grid (≥768px) .col-sm-*
Medium grid (≥992px) .col-md-*
Large grid (≥1200px) .col-lg-*
Responsive utility classes (≥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 height sizes .input-sm .input-lg
Input groups .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 .nav-justified
Responsive images .img-responsive
Contextual table rows .success .danger .warning .active .info
Contextual panels .panel-success .panel-danger .panel-warning .panel-info
Modal .modal-dialog .modal-content
Thumbnail image .img-thumbnail
Well sizes .well-sm .well-lg
Alert links .alert-link

O que foi removido

Os seguintes elementos foram removidos ou alterados no v3.0.

Elemento Removido do 2.x Equivalente no 3.0
Form actions .form-actions N/A
Search form .form-search N/A
Form group with info .control-group.info N/A
Fixed-width input sizes .input-mini .input-small .input-medium .input-large .input-xlarge .input-xxlarge Use .form-control and the grid system instead.
Block level form input .input-block-level No direct equivalent, but forms controls are similar.
Inverse buttons .btn-inverse N/A
Fluid row .row-fluid .row (no more fixed grid)
Controls wrapper .controls N/A
Controls row .controls-row .row or .form-group
Navbar inner .navbar-inner N/A
Navbar vertical dividers .navbar .divider-vertical N/A
Dropdown submenu .dropdown-submenu N/A
Tab alignments .tabs-left .tabs-right .tabs-below N/A
Pill-based tabbable area .pill-content .tab-content
Pill-based tabbable area pane .pill-pane .tab-pane
Nav lists .nav-list .nav-header No direct equivalent, but list groups and .panel-groups are similar.
Inline help for form controls .help-inline No exact equivalent, but .help-block is similar.
Non-bar-level progress colors .progress-info .progress-success .progress-warning .progress-danger Use .progress-bar-* on the .progress-bar instead.

Notas adicionais

Outras mudanças no v3.0 não são imediatamente aparentes. Classes base, estilos-chave e comportamentos foram ajustados para flexibilidade e nosso enfoque mobile first (mobile primeiro). Aqui está uma lista parcial:

  • Por padrão, os controles de formulário baseados em texto agora recebem apenas estilização mínima. Para cores de foco e cantos arredondados, aplique a classe .form-control no elemento a ser estilizado.
  • Os controles de formulário baseados em texto com a classe .form-control aplicada agora têm 100% de largura por padrão. Envolva os inputs dentro de <div class="col-*"></div> para controlar as larguras dos inputs.
  • .badge não possui mais classes contextuais (-success, -primary, etc.).
  • .btn deve também usar .btn-default para obter o botão "padrão".
  • .row agora é fluido.
  • As imagens não são mais responsivas por padrão. Use .img-responsive para tamanho fluido de <img>.
  • Os ícones, agora .glyphicon, são agora baseados em fonte. Os ícones também requerem uma classe base e uma classe de ícone (por exemplo, .glyphicon .glyphicon-asterisk).
  • Typeahead foi removido, em favor do uso do Twitter Typeahead.
  • A marcação de modal mudou significativamente. As seções .modal-header, .modal-body e .modal-footer agora estão envolvidas em .modal-content e .modal-dialog para melhor comportamento e estilo mobile. Além disso, você não deve mais aplicar .hide ao .modal em sua marcação.
  • A partir do v3.1.0, o HTML carregado pela opção de modal remote agora é injetado no .modal-content (do v3.0.0 ao v3.0.3, no .modal) em vez de no .modal-body. Isso permite que você também varie facilmente o cabeçalho e rodapé do modal, não apenas o corpo do modal.
  • Os recursos de checkbox e radio do plugin button.js agora ambos usam data-toggle="buttons" em vez de data-toggle="buttons-checkbox" ou data-toggle="buttons-radio" em sua marcação.
  • Os eventos JavaScript são namespaceados. Por exemplo, para lidar com o evento "show" do modal, use 'show.bs.modal'. Para abas "shown" use 'shown.bs.tab', etc.

Para mais informações sobre como atualizar para o v3.0 e trechos de código da comunidade, consulte o Bootply.