Bootstrap, do Twitter

Bootstrap é um kit de ferramentas do Twitter projetado para iniciar o desenvolvimento de aplicativos e sites da web.
Inclui CSS e HTML básicos para tipografia, formulários, botões, tabelas, grades, navegação e muito mais.

Alerta de Nerd: Bootstrap é construído com Less e foi projetado para funcionar com navegadores modernos em mente.

Hotlink do CSS

Para um início mais rápido e fácil, basta copiar este snippet em sua página da web.

Use com menos

Um fã de usar menos? Sem problemas, basta clonar o repositório e adicionar estas linhas:

Fork no GitHub

Faça download, fork, pull, problemas de arquivo e muito mais com o repositório oficial do Bootstrap no Github.

Bootstrap no GitHub »

História

Nos primeiros dias do Twitter, os engenheiros usavam quase qualquer biblioteca com a qual estavam familiarizados para atender aos requisitos de front-end. O Bootstrap começou como uma resposta aos desafios que se apresentaram e o desenvolvimento acelerou rapidamente durante a primeira Hackweek do Twitter.

Com a ajuda e feedback de muitos engenheiros no Twitter, o Bootstrap cresceu significativamente para abranger não apenas estilos básicos, mas padrões de design front-end mais elegantes e duráveis.

Leia mais em dev.twitter.com ›

Suporte ao navegador

O Bootstrap é testado e suportado nos principais navegadores modernos, como Chrome, Safari, Internet Explorer e Firefox.

Testado e compatível com Chrome, Safari, Internet Explorer e Firefox
  • Último Safari
  • Último Google Chrome
  • Firefox 4+
  • Internet Explorer 7+

O que está incluído

Bootstrap vem completo com CSS compilado, não compilado e templates de exemplo.

  • Todos os arquivos .less originais
  • CSS totalmente compilado e minificado
  • Documentação completa do guia de estilo
  • Modelo de página de exemplo (mais em breve)

Grade padrão

O sistema de grade padrão fornecido como parte do Bootstrap é uma grade de 16 colunas de 940px de largura. É um sabor do popular sistema de grade 960, mas sem a margem/preenchimento adicional nos lados esquerdo e direito.

Exemplo de marcação de grade

Conforme mostrado aqui, um layout básico pode ser criado com duas "colunas", cada uma abrangendo um número das 16 colunas fundamentais que definimos como parte de nosso sistema de grade. Veja os exemplos abaixo para mais variações.

  1. <div class="linha"> classe = "linha" >
  2. <div class = "span6 colunas" >
  3. ...
  4. </div>
  5. <div class = "span10 colunas" >
  6. ...
  7. </div>
  8. </div>
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
1
4
4
4
4
4
6
6
8
8
5
11
16

Colunas de compensação

4
8 deslocamento 4
4 deslocamento 4
4 deslocamento 4
5 deslocamento 3
5 deslocamento 3
10 deslocamento 6

Layout fixo

Um layout de contêiner centralizado de 940px de largura para praticamente qualquer site ou página.

  1. <corpo>
  2. <div class = "contêiner" >
  3. ...
  4. </div>
  5. </body>

Layout fluido

Uma estrutura de página fluida ou líquida flexível com larguras mínima e máxima e uma barra lateral esquerda. Ótimo para aplicativos.

  1. <corpo>
  2. <div class = "contêiner-fluido" >
  3. <div class = "barra lateral" >
  4. ...
  5. </div>
  6. <div class = "conteúdo" >
  7. ...
  8. </div>
  9. </div>
  10. </body>

Títulos e cópia

Uma hierarquia tipográfica padrão para estruturar suas páginas da web.

h1. Cabeçallho 1

h2. Título 2

h3. Título 3

h4. Título 4

h5. Título 5
h6. Título 6

Exemplo de parágrafo

Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam id dolor id nibh ultricies vehicula ut id elit.

Exemplo de título Tem subtítulo…

Diversos elementos

Usando ênfase, endereços e abreviaturas

<strong> <em> <address> <abbr>

Quando usar

As etiquetas de ênfase ( <strong>e <em>) devem ser usadas para indicar importância ou ênfase adicional de uma palavra ou frase em relação à sua cópia circundante. Use <strong>para importância e ênfase <em>de estresse .

Ênfase em um parágrafo

Fusce dapibus , tellus ac cursus commodo , tortor mauris condimentum nibh , ut fermentum massa justo sit amet risus. Mecenas faucibus mollis interdum. Nulla vitae elit libero, a pharetra augue.

Observação: ainda é permitido usar tags <b>e <i>em HTML5, mas elas não vêm mais com estilos inerentes. <b>destina-se a destacar palavras ou frases sem transmitir importância adicional, enquanto <i>é principalmente para voz, termos técnicos, etc.

Endereços

O <address>elemento é usado para informações de contato de seu ancestral mais próximo ou de todo o trabalho. Veja como fica:

Twitter, Inc.
795 Folsom Ave, Suite 600
San Francisco, CA 94107
P: (123) 456-7890

Observação: cada linha em um <address>deve terminar com uma quebra de linha ( <br />) ou ser envolvida em uma tag de nível de bloco (por exemplo, <p>) para estruturar adequadamente o conteúdo.

Abreviaturas

Para abreviaturas e siglas, use a <abbr>tag ( <acronym>está obsoleta em HTML5 ). Coloque o formulário abreviado dentro da tag e defina um título para o nome completo.

Citações em bloco

<blockquote> <p> <small>

Como cotar

<blockquote>Para incluir uma citação em bloco, envolva <p>e <small>tags. Use o <small>elemento para citar sua fonte e você receberá um travessão &mdash;antes dela.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.

Dr. Júlio Hibbert

Listas

Não ordenado<ul>

  • Lorem ipsum dolor sit amet
  • Consectetur adipiscing elit
  • Integer molestie lorem em massa
  • Facilisis em pretium nisl aliquet
  • Nulla volutpat aliquam velit
    • Phasellus iaculis neque
    • Ultricies Purus sodales
    • Vestibulum laoreet porttitor sem
    • Ac tristique libero volutpat at
  • Faucibus porta lacus fringilla vel
  • Aenean sit amet erat nunc
  • Eget porttitor lorem

Sem estilo<ul.unstyled>

  • Lorem ipsum dolor sit amet
  • Consectetur adipiscing elit
  • Integer molestie lorem em massa
  • Facilisis em pretium nisl aliquet
  • Nulla volutpat aliquam velit
    • Phasellus iaculis neque
    • Ultricies Purus sodales
    • Vestibulum laoreet porttitor sem
    • Ac tristique libero volutpat at
  • Faucibus porta lacus fringilla vel
  • Aenean sit amet erat nunc
  • Eget porttitor lorem

Encomendado<ol>

  1. Lorem ipsum dolor sit amet
  2. Consectetur adipiscing elit
  3. Integer molestie lorem em massa
  4. Facilisis em pretium nisl aliquet
  5. Nulla volutpat aliquam velit
  6. Faucibus porta lacus fringilla vel
  7. Aenean sit amet erat nunc
  8. Eget porttitor lorem

Descriçãodl

Listas de descrição
Uma lista de descrição é perfeita para definir termos.
Euismod
Vestibulum id ligula porta felis euismod sempre eget lacinia odio sem nec elit.
Donec id elit non mi porta gravida at eget metus.
porta Malesuada
Etiam porta sem maleuada magna mollis euismod.

Construindo tabelas

<table> <thead> <tbody> <tr> <th> <td> <colspan> <caption>

As mesas são ótimas – para muitas coisas. Grandes tabelas, no entanto, precisam de um pouco de amor de marcação para serem úteis, escaláveis ​​e legíveis (no nível do código). Aqui estão algumas dicas para ajudar.

Sempre envolva seus cabeçalhos de coluna de <thead>forma que a hierarquia seja <thead>> <tr>> <th>.

Semelhante aos cabeçalhos de coluna, todo o conteúdo do corpo da sua tabela deve ser agrupado em um <tbody>para que sua hierarquia seja <tbody>> <tr>> <td>.

Exemplo: estilos de tabela padrão

Todas as tabelas serão estilizadas automaticamente com apenas as bordas essenciais para garantir a legibilidade e manter a estrutura. Não há necessidade de adicionar classes ou atributos extras.

# Primeiro nome Sobrenome Linguagem
1 Algum Um Inglês
2 João Pacote de seis Inglês
3 Stu Dente Código
  1. < classe de tabela = "tabela-comum" >
  2. ...
  3. </table>

Exemplo: listrado de zebra

Fique um pouco extravagante com suas mesas adicionando listras de zebra - basta adicionar a .zebra-stripedclasse.

# Primeiro nome Sobrenome Linguagem
1 Algum Um Inglês
2 João Pacote de seis Inglês
3 Stu Dente Código

Observação: o Zebra-striping é um aprimoramento progressivo não disponível para navegadores mais antigos, como IE8 e anteriores.

  1. <table class = "tabela comum listrada de zebra" >
  2. ...
  3. </table>

Exemplo: listrado de zebra com TableSorter.js

Tomando o exemplo anterior, melhoramos a utilidade de nossas tabelas fornecendo funcionalidade de classificação via jQuery e o plugin Tablesorter . Clique no cabeçalho de qualquer coluna para alterar a classificação.

# Primeiro nome Sobrenome Linguagem
1 Sua Um Inglês
2 João Pacote de seis Inglês
3 Stu Dente Código
  1. <script src = "js/jquery/jquery.tablesorter.min.js" ></script>
  2. <script >
  3. $ ( função () {
  4. $ ( "table#sortTableExample" ). tableorter ({ sortList : [[ 1 , 0 ]] });
  5. });
  6. </script>
  7. <table class = "tabela comum listrada de zebra" >
  8. ...
  9. </table>

Estilos padrão

Todos os formulários recebem estilos padrão para apresentá-los de maneira legível e escalável. Os estilos são fornecidos para entradas de texto, listas de seleção, áreas de texto, botões de opção e caixas de seleção e botões.

Exemplo de legenda de formulário
Algum valor aqui
Pequeno trecho de texto de ajuda
Exemplo de legenda de formulário
@
Exemplo de legenda de formulário
Nota: Os rótulos cercam todas as opções para áreas de clique muito maiores e um formulário mais utilizável.
para Todos os horários são mostrados como Horário Padrão do Pacífico (GMT -08:00).
Bloco de texto de ajuda para descrever o campo acima, se necessário.
 

Formulários empilhados

Adicione .form-stackedao HTML do seu formulário e você terá rótulos no topo de seus campos em vez de à esquerda. Isso funciona muito bem se seus formulários forem curtos ou se você tiver duas colunas de entradas para formulários mais pesados.

Exemplo de legenda de formulário
Exemplo de legenda de formulário
Pequeno trecho de texto de ajuda
Nota: Os rótulos cercam todas as opções para áreas de clique muito maiores e um formulário mais utilizável.
 

Botões

Como convenção, os botões são usados ​​para ações enquanto os links são usados ​​para objetos. Por exemplo, "Download" pode ser um botão e "atividade recente" pode ser um link.

Todos os botões são padronizados para um estilo cinza claro, mas uma .primaryclasse azul está disponível. Além disso, rolar seus próprios estilos é fácil.

Botões de exemplo

Estilos de botão podem ser aplicados a qualquer coisa com o .btnmétodo aplicado. Normalmente, você desejará aplicá-los apenas a elementos <a>, <button>e select <input>. Veja como fica:

 

Tamanhos alternativos

Gosta de botões maiores ou menores? Têm-no!

Estado desativado

Para botões que não estão ativos ou estão desabilitados pelo aplicativo por um motivo ou outro, use o estado desabilitado. Isso é .disabledpara links e :disabledpara <button>elementos.

Links

Botões

 

Alertas básicos

Mensagens de uma linha para destacar a falha, possível falha ou sucesso de uma ação. Particularmente útil para formulários.

×

Oh sôfrego! Altere isso e aquilo e tente novamente.

×

Santo gaúcho! Melhor verificar você mesmo, você não está parecendo muito bem.

×

Bem feito! Você leu com sucesso esta mensagem de alerta.

×

Atenção! Este é um alerta que precisa de sua atenção, mas ainda não é uma grande prioridade.

Bloquear mensagens

Para mensagens que exigem um pouco de explicação, temos alertas de estilo de parágrafo. Eles são perfeitos para borbulhar mensagens de erro mais longas, avisar um usuário sobre uma ação pendente ou apenas apresentar informações para dar mais ênfase à página.

×

Oh sôfrego! Você tem um erro!Altere isso e aquilo e tente novamente. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.

Tome esta ação Ou faça isso

×

Santo gaúcho! Isso é um aviso!Melhor verificar você mesmo, você não está parecendo muito bem. Nulla vitae elit libero, a pharetra augue. Praesent comodo cursus magna, vel scelerisque nisl consectetur et.

Tome esta ação Ou faça isso

×

Bem feito!Você leu com sucesso esta mensagem de alerta. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Mecenas faucibus mollis interdum.

Tome esta ação Ou faça isso

×

Atenção!Este é um alerta que precisa de sua atenção, mas ainda não é uma grande prioridade.

Tome esta ação Ou faça isso

Modais

Os modais—diálogos ou lightboxes—são ótimos para ações contextuais em situações em que é importante que o contexto de fundo seja mantido.

Dicas de ferramentas

Twipsies são super úteis para ajudar um usuário confuso e apontá-lo na direção certa.

Lorem ipsum dolar sit amet illo error ipsum veritatis aut iste perspiciatis iste voluptas natus illo quase odit aut natus conequuntur conequuntur, aut natus illo voluptatem odit perspiciatis laudantium rem doloremque totam voluptas. Voluptasdicta eaque beatae aperiam ut enim voluptatem explicabo explicabo, voluptas quia odit fugit accusantium totam totam architecto explicabo sit quasi fugit fugit, totam doloremque unde sunt sed dicta quae accusantium fugit voluptas nemo voluptas voluptatem rem quae aut veritatis quasi quae.

abaixo de!
certo!
deixei!
acima de!

Popovers

Use popovers para fornecer informações subtextuais a uma página sem afetar o layout.

Título popover

Etiam porta sem maleuada magna mollis euismod. Mecenas faucibus mollis interdum. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.

Bootstrap foi construído com Preboot , um pacote de código aberto de mixins e variáveis ​​para ser usado em conjunto com Less , um pré-processador CSS para desenvolvimento web mais rápido e fácil.

Confira como usamos o Preboot no Bootstrap e como você pode usá-lo caso opte por executar o Less em seu próximo projeto.

Como usá-lo

Use esta opção para fazer pleno uso das variáveis ​​Less do Bootstrap, mixins e aninhamento em CSS via javascript em seu navegador.

  1. <link rel = "stylesheet/less" href = "less/bootstrap.less" media = "all" />
  2. <script src = "js/less-1.0.41.min.js" ></script>

Não está sentindo a solução .js? Experimente o aplicativo Less Mac ou use o Node.js para compilar ao implantar seu código.

O que está incluído

Aqui estão alguns dos destaques do que está incluído no Twitter Bootstrap como parte do Bootstrap. Acesse o site do Bootstrap ou a página do projeto Github para baixar e saber mais.

Variáveis ​​de cor

Variáveis ​​em Less são perfeitas para manter e atualizar seu CSS sem dor de cabeça. Quando você quiser alterar um valor de cor ou um valor usado com frequência, atualize-o em um ponto e pronto.

  1. // Links
  2. @linkColor : #8b59c2;
  3. @linkColorHover : escurecer ( @linkColor , 10 );
  4.  
  5. // Cinzas
  6. @preto : #000;
  7. @grayDark : clarear ( @black , 25 %);
  8. @gray : clarear ( @black , 50 %);
  9. @grayLight : clarear ( @black , 70 %);
  10. @grayLighter : clarear ( @black , 90 %);
  11. @branco : #fff;
  12.  
  13. // Cores de destaque
  14. @azul : #08b5fb;
  15. @verde : #46a546;
  16. @red : #9d261d;
  17. @yellow : #ffc40d;
  18. @laranja : #f89406;
  19. @rosa : #c3325f;
  20. @roxo : #7a43b6;
  21.  
  22. // Linha de base
  23. @baseline : 20px ;

Comentando

Less também fornece outro estilo de comentário além da /* ... */sintaxe normal do CSS.

  1. // Este é um comentário
  2. /* Isso também é um comentário */

Mixins até o wazoo

Mixins são basicamente includes ou parciais para CSS, permitindo que você combine um bloco de código em um. Eles são ótimos para propriedades prefixadas de fornecedores como box-shadow, gradientes entre navegadores, pilhas de fontes e muito mais. Abaixo está uma amostra dos mixins incluídos no Bootstrap.

Pilhas de fontes

  1. #Fonte {
  2. . taquigrafia ( @weight : normal , @size : 14px , @lineHeight : 20px ) {
  3. tamanho da fonte : @size ;
  4. font - weight : @weight ;
  5. altura da linha : @lineHeight ;
  6. }
  7. . sans - serif ( @weight : normal , @size : 14px , @lineHeight : 20px ) {
  8. fonte - família : "Helvetica Neue " , ​​Helvetica , Arial , sem serifa ;
  9. tamanho da fonte : @size ;
  10. font - weight : @weight ;
  11. altura da linha : @lineHeight ;
  12. }
  13. . serif ( @weight : normal , @size : 14px , @lineHeight : 20px ) {
  14. fonte - família : "Georgia " , Times New Roman , Times , sem serifa ;
  15. tamanho da fonte : @size ;
  16. font - weight : @weight ;
  17. altura da linha : @lineHeight ;
  18. }
  19. . monospace ( @weight : normal , @size : 12px , @lineHeight : 20px ) {
  20. fonte - família : "Monaco" , Courier New , monoespaçado ;
  21. tamanho da fonte : @size ;
  22. font - weight : @weight ;
  23. altura da linha : @lineHeight ;
  24. }
  25. }

Gradientes

  1. #gradiente {
  2. . horizontal ( @startColor : #555, @endColor: #333) {
  3. cor de fundo : @endColor ;
  4. background - repetir : repeat - x ;
  5. background - imagem : - khtml - gradiente ( linear , superior esquerdo , superior direito , de ( @startColor ), para ( @endColor )); // Konqueror
  6. imagem de fundo : -moz - linear - gradiente ( esquerda , @startColor , @endColor ) ; // FF 3.6+
  7. imagem de fundo : - ms - linear - gradiente ( esquerda , @startColor , @endColor ) ; // IE10
  8. background - image : - webkit - gradiente ( linear , left top , right top , color - stop ( 0 %, @startColor ), color - stop ( 100 %, @endColor )); // Safari 4+, Chrome 2+
  9. background - image : - webkit - linear - gradiente ( left , @startColor , @endColor ); // Safari 5.1+, Chrome 10+
  10. imagem de fundo : -o - linear - gradiente ( esquerda , @startColor , @endColor ) ; // Ópera 11.10
  11. - ms - filtro : %( "progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)" , @startColor , @endColor ); // IE8+
  12. filter : e (%( "progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)" , @startColor , @endColor )); // IE6 e IE7
  13. imagem de fundo : gradiente linear ( esquerda , @startColor , @endColor ) ; //Le padrão
  14. }
  15. . vertical ( @startColor : #555, @endColor: #333) {
  16. cor de fundo : @endColor ;
  17. background - repetir : repeat - x ;
  18. background - image : - khtml - gradiente ( linear , superior esquerdo , inferior esquerdo , de ( @startColor ), para ( @endColor )); // Konqueror
  19. background - imagem : - moz - linear - gradiente ( @startColor , @endColor ); // FF 3.6+
  20. background - imagem : - ms - linear - gradiente ( @startColor , @endColor ); // IE10
  21. background - imagem : - webkit - gradiente ( linear , superior esquerdo , inferior esquerdo , color - stop ( 0 %, @startColor ), color - stop ( 100 %, @endColor )); // Safari 4+, Chrome 2+
  22. background - imagem : - webkit - linear - gradiente ( @startColor , @endColor ); // Safari 5.1+, Chrome 10+
  23. background - imagem : - o - linear - gradiente ( @startColor , @endColor ); // Ópera 11.10
  24. - ms - filtro : %( "progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)" , @startColor , @endColor ); // IE8+
  25. filter : e (%( "progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)" , @startColor , @endColor )); // IE6 e IE7
  26. imagem de fundo : gradiente linear ( @startColor , @endColor ) ; // O padrão
  27. }
  28. . direcional ( @startColor : #555, @endColor: #333, @deg: 45deg) {
  29. ...
  30. }
  31. . vertical - três - cores ( @startColor : #00b3ee, @midColor: #7a43b6, @colorStop: 0.5, @endColor: #c3325f) {
  32. ...
  33. }
  34. }

Operações e sistema de rede

Seja sofisticado e faça algumas contas para gerar mixins flexíveis e poderosos como o abaixo.

  1. // Grade
  2. @gridColumns : 16 ;
  3. @gridColumnWidth : 40px ;
  4. @gridGutterWidth : 20px ;
  5.  
  6. // Sistema de rede
  7. . recipiente {
  8. largura : @siteWidth ;
  9. margem : 0 automático ;
  10. . clearfix ();
  11. }
  12. . colunas ( @columnSpan : 1 ) {
  13. exibição : em linha ;
  14. flutuar : esquerda ;
  15. largura : ( @gridColumnWidth * @columnSpan ) + ( @gridGutterWidth * ( @columnSpan - 1 ));
  16. margin - left : @gridGutterWidth ;
  17. &: primeiro - filho {
  18. margem esquerda : 0 ; _
  19. }
  20. }
  21. . deslocamento ( @columnOffset : 1 ) {
  22. margin - left : ( @gridColumnWidth * @columnOffset ) + ( @gridGutterWidth * ( @columnOffset - 1 )) ! importante ;
  23. }