O Bootstrap 4 é uma grande reescrita do tão famoso Bootstrap. Depois de 2 anos na versão alfa, o Bootstrap 4 agora é beta e entra em fase final para o release final. O Bootstrap é a o framework mais popular do mundo para criar sites e aplicativos móveis e na sua versão 4 apresenta várias novidades, onde iremos analisar alguma delas e mostrar nossa “primeira impressão” da nova versão do Boostrap:
À medida que a web evolui cada vez mais para o design responsivo, pode ser um verdadeiro desafio para os desenvolvedores web manterem-se. O Bootstrap pode tornar as coisas muito mais fáceis. O Bootstrap permite que você crie sites responsivos sem que você precise fazer adaptações, o Bootstrap cuida disso.
Começo rápido
Para adicionar rapidamente o Bootstrap ao seu projeto, use o Bootstrap CDN, fornecido gratuitamente pelo pessoal da MaxCDN.
Veja este exemplo de quickstart:
<!DOCTYPE html> <html lang="en"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous"> </head> <body> <h1>Hello, world!</h1> <!-- Optional JavaScript --> <!-- jQuery first, then Popper.js, then Bootstrap JS --> <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script> </body> </html>
Isso é tudo o que você precisa para obter os requisitos gerais da página básica para uma aplicação com Boostrap 4.
Veja uma tabela comparativa do site Quackit que mostra um comparativo entre as versões 3 e 4.
Component | Bootstrap 3 | Bootstrap 4 |
---|---|---|
Global | ||
Source CSS Files | LESS | SCSS |
Primary CSS Unit | px |
rem |
Media Queries Unit | px |
px |
Global Font Size | 14px |
16px |
Default Fonts | Helvetica Neue, Helvetica, Arial, sans-serif | Uses a “native font stack” (user’s system fonts), with a fallback to Helvetica Neue, Arial, and sans-serif |
Grids | ||
Grid Tiers | 4 tier grid system (xs, sm, md, lg) | 5 tier grid system (xs, sm, md, lg, xl). |
Offsetting Columns | Uses col-*-offset-* classes to offset columns. For example, col-md-offset-4 . |
Uses offset-*-* classes to offset columns. For example, offset-md-4 . |
Tables | ||
Inverse Tables | Not supported. | Added inverse tables with the .table-inverse class. |
Table Head Styles | Not supported. | Added table head styles with the .thead-default and .thead-inverse classes. |
Condensed Tables | .table-condensed |
.table-sm |
Contextual Classes | Bootstrap 3 doesn’t use the .table- prefix for its contextual classes.
For example, Bootstrap 3 uses |
Added the .table- prefix for its contextual classes. |
Responsive Tables | The .table-responsive class must be added to a parent div element. |
Can add .table-responsive to the actual table element. |
Reflow Tables | Not supported. | .table-reflow class.Reflow tables have now been dropped. |
Forms | ||
Horizontal Forms | Horizontal forms require the .form-horizontal class.
Forms don’t require |
Bootstrap 4 dropped the .form-horizontal class — it is no longer needed to display horizontal forms.
Forms require the |
Use .control-label when using grids for form layout. |
Bootstrap 4 uses .col-form-label * when using grids for form layout.
* Note that Bootstrap 4 initially used |
|
Checkboxes and Radio Buttons | Uses .radio , .radio-inline , .checkbox , or .checkbox-inline to display checkboxes and radio buttons. |
Uses .form-check , .form-check-label , .form-check-input , and .form-check-inline . |
Form Control Size | Use .input-lg and .input-sm to increase or decrease the size of an input control. |
Use .form-control-lg and .form-control-sm to increase or decrease the size of an input control. |
Help Text | Use the .help-block class to display help text. |
Bootstrap 4 uses the .form-text class to display help text.
|
Validation and Feedback Icons | Includes validation styles for error, warning, and success states on form controls (for example, .has-warning ). To present icons on the input fields using Bootstrap 3, use glyphicons. |
Validation styles are not available for Bootstrap 4 forms. Use custom Bootstrap form validation messages instead. |
Legends | No classes for styling the form legends. | Provides the option of using .col-form-legend on legend elements to style it more like a label. |
Custom Forms | Not supported. | Bootstrap 4 introduced custom forms — completely custom form elements that replace the browser defaults. |
Buttons | ||
Styles | Includes the .btn-default and .btn-info classes.
The |
Introduced the .btn-secondary , .btn-light , and .btn-dark classes.
Dropped the Note that the |
Outline Buttons | Not supported. | Introduced the .btn-outline-* classes for styling buttons with an outline color.
(The |
Button Sizes | The .btn-xs class is available. |
Dropped the .btn-xs class (only .btn-sm and .btn-lg are available now). |
Images | ||
Responsive Images | Use .img-responsive class. |
Use .img-fluid class. |
Image Alignment | Use .pull-right , .pull-left , and .center-block helper classes. |
Uses .m-x-auto instead of .center-block to align block-level images.
Can also use the various Can use the various |
Media Objects | ||
Classes | Includes many different classes for media objects, including .media , .media-body .media-object , .media-heading , .media-right , .media-left , and .media-list and .media-body . |
Uses just .media class. Margins can be applied using spacer utilities. Media objects are flexbox enabled in Bootstrap 4, so the various flexbox classes can also be applied (such as reordering, etc). |
Dropdowns | ||
Structure | Apply dropdowns to lists (i.e. using ul and li ). |
Dropdowns can be built with ul or div s.
Apply the |
Menu Headers | Apply .dropdown-header to the li tag. |
Apply .dropdown-header to h1 – h2 tags (as Bootstrap no longer uses li tags to build dropdowns). |
Dividers | Apply the .divider class to the li element (because it used lists to build dropdowns). |
Apply the .dropdown-divider to the div element. |
Disabled Menu Items | Apply the .disabled class to the li element. |
Apply the .disabled class to the a element. |
Button Groups | ||
Justified? | Supports justified button groups (via the .btn-group-justified class). |
Not supported. |
Extra Small? | Supports extra small button groups (via the .btn-group-xs class). |
Not supported (dropped the .btn-group-xs class). |
Navs | ||
Inline Navs | There is no .nav-inline class. |
Can use the .nav-inline class to explicitly specify navs to be displayed inline. |
Navbars | ||
Colors | Limited (preset) color options. Supports inverse navbars but not the other classes. | New (preset) color options. Introduced the .navbar-light and the .navbar-dark classes, and allows the .bg-* classes to be used on navbars. |
Navbar Alignment | Use .navbar-right , .navbar-left to align components within the navbar. |
.pull-*-right and .pull-*-left responsive helper classes.
Can either use spacing utilities such as |
Navbar Forms | Add the .navbar-form class to forms within navbars. |
Bootstrap 4 dropped the .navbar-form class. It’s no longer necessary. |
Fixed Navbars | Uses .navbar-fixed-top and .navbar-fixed-bottom to fix navbars to the top or bottom. |
Uses .fixed-top and .fixed-bottom . |
Pagination | ||
Default Pagination | Only requires .pagination to be added (to the ul element that represents the list of pages). |
Must also add .page-item to each li element and .page-link to each a element. |
Pagers | Uses .previous and .next for aligning pagers. |
Pagers have been dropped in Bootstrap 4 (Alpha 3).
|
Labels | ||
Pill Labels | The .label-pill class is not available. However, Bootstrap 3 does have badges (which achieves a similar visual effect). |
Labels have been replaced by badges in Bootstrap 4.
Badges can use the |
Tags | ||
Supported? | No.
“Tags” are called “Labels” in Bootstrap 3 (i.e. they use the |
Tags have now been renamed to “badges”. These replace labels from Bootstrap 3. |
Jumbotron | ||
Full-Width | The .jumbotron-fluid class is not required on full-width jumbotrons. |
Introduced the .jumbotron-fluid class for full-width jumbotrons. |
Progress Bars | ||
Uses progress ? |
Doesn’t use the progress for progress bars. Instead, applies progress bar classes to nested div elements. |
progress element when working with progress bars.Using the |
Glyphicons | ||
Supported? | Supported. | Not supported. |
Typography | ||
Blockquotes | Bootstrap styles are applied to the blockquote element by default. |
Introduced the .blockquote class for styling the blockquote element (i.e. styling this element is now opt-in). |
Blockquote Alignment | Use .blockquote-reverse to align a blockquote to the right. |
Use the text utilities to align blockquotes (.text-center and .text-right ). |
Page Headers | The .page-header class is supported. |
The .page-header class is not supported. |
Description Lists | The .dl-horizontal class was used to declare a horizontal list. |
Horizontal lists are now declared with the .row class on the dl tag, then any of the grid system’s predefined classes to the dt and dd tags. |
Non-Responsive Usage | ||
Supported? | Supported. You can specify a layout to be non-responsive. | Not supported. |
List Groups | ||
Linked List Items / Button List Items | Apply .list-group-item to the a element. |
Apply .list-group-item-action to the a element. |
Collapse | ||
Show content | Uses .in to have content expanded upon page load. |
Uses .show to have content expanded upon page load. |
Cards | ||
Supported? | Not supported. | Introduced in Bootstrap 4. Cards replace functionality that was previously provided by panels, wells, and thumbnails. |
Panels | ||
Supported? | Supported. | Not supported. Use cards instead. |
Wells | ||
Supported? | Supported. | Not supported. Use cards instead. |
Thumbnails | ||
Supported? | Supported. | Not supported. Use cards instead. |
Breadcrumbs | ||
Classes | Uses the .breadcrumb class against the ul tag. |
Also requires .breadcrumb-item to be applied against all li elements that make up the breadcrumb.
Breadcrumbs can also be used outside of lists. For example, the |
Carousels | ||
Carousel Item | Use .item class. |
Use .carousel-item class. |
Affix | ||
Supported? | Yes. | No. |
O Bootstrap 4 alpha foi lançado em 19 de agosto de 2015. Após dois anos em vários lançamentos alfa, o Bootstrap 4 finalmente chegou à versão beta em 10 de agosto de 2017. Esta versão envolve uma grande revisão do Bootstrap com algumas grandes mudanças na forma como funciona quando em comparação com o Bootstrap 3. Houve muitas alterações na maioria dos componentes, incluindo tabelas, formulários, grades, dropdowns, navbars e muito mais.
Para fazer download do bootstrap você pode clicar na página oficial e acessar os arquivos completos para utilizar offline em sua aplicação.
Você também pode acessar este tutorial completo sobre boostrap (em inglês) para mais detalhes.
Um grande abraço!