CSS
Configurações globais de CSS, elementos HTML fundamentais estilizados e aprimorados com classes extensíveis e um sistema de grade avançado.
Configurações globais de CSS, elementos HTML fundamentais estilizados e aprimorados com classes extensíveis e um sistema de grade avançado.
Conheça as principais peças da infraestrutura do Bootstrap, incluindo nossa abordagem para um desenvolvimento web melhor, mais rápido e mais forte.
Bootstrap faz uso de certos elementos HTML e propriedades CSS que requerem o uso do doctype HTML5. Inclua-o no início de todos os seus projetos.
Com o Bootstrap 2, adicionamos estilos opcionais compatíveis com dispositivos móveis para os principais aspectos da estrutura. Com o Bootstrap 3, reescrevemos o projeto para ser compatível com dispositivos móveis desde o início. Em vez de adicionar estilos móveis opcionais, eles são incorporados ao núcleo. Na verdade, o Bootstrap é móvel primeiro . Os estilos mobile first podem ser encontrados em toda a biblioteca em vez de em arquivos separados.
Para garantir a renderização adequada e o zoom de toque, adicione a meta tag viewport ao seu arquivo <head>
.
Você pode desabilitar os recursos de zoom em dispositivos móveis adicionando user-scalable=no
à metatag da janela de visualização. Isso desativa o zoom, o que significa que os usuários só podem rolar e faz com que seu site pareça um pouco mais com um aplicativo nativo. No geral, não recomendamos isso em todos os sites, portanto, tenha cuidado!
O Bootstrap define os estilos básicos de exibição global, tipografia e link. Especificamente, nós:
background-color: #fff;
nobody
@font-family-base
base @font-size-base
tipográfica@line-height-base
@link-color
e aplique sublinhados de link somente em:hover
Esses estilos podem ser encontrados em scaffolding.less
.
Para melhor renderização entre navegadores, usamos Normalize.css , um projeto de Nicolas Gallagher e Jonathan Neal .
O Bootstrap requer um elemento de contenção para envolver o conteúdo do site e abrigar nosso sistema de grade. Você pode escolher um dos dois contêineres para usar em seus projetos. Observe que, devido a padding
e mais, nenhum dos contêineres é encaixável.
Use .container
para um contêiner de largura fixa responsivo.
Use .container-fluid
para um contêiner de largura total, abrangendo toda a largura da sua janela de visualização.
O Bootstrap inclui um sistema de grade de primeiro fluido móvel e responsivo que dimensiona adequadamente até 12 colunas à medida que o tamanho do dispositivo ou da janela de visualização aumenta. Inclui classes predefinidas para opções de layout fáceis, bem como mixins poderosos para gerar layouts mais semânticos .
Os sistemas de grade são usados para criar layouts de página por meio de uma série de linhas e colunas que abrigam seu conteúdo. Veja como funciona o sistema de grade do Bootstrap:
.container
(largura fixa) ou .container-fluid
(largura total) para alinhamento e preenchimento adequados..row
e .col-xs-4
estão disponíveis para criar layouts de grade rapidamente. Menos mixins também podem ser usados para layouts mais semânticos.padding
. Esse preenchimento é deslocado em linhas para a primeira e a última coluna por meio de margem negativa em .row
s..col-xs-4
..col-md-*
classe a um elemento não afetará apenas seu estilo em dispositivos médios, mas também em dispositivos grandes se uma .col-lg-*
classe não estiver presente.Veja os exemplos para aplicar esses princípios ao seu código.
Usamos as seguintes consultas de mídia em nossos arquivos Less para criar os principais pontos de interrupção em nosso sistema de grade.
Ocasionalmente, expandimos essas consultas de mídia para incluir um max-width
para limitar o CSS a um conjunto mais restrito de dispositivos.
Veja como os aspectos do sistema de grade do Bootstrap funcionam em vários dispositivos com uma tabela prática.
Dispositivos extra pequenos Telefones (<768px) | Dispositivos pequenos Tablets (≥768px) | Dispositivos médios Desktops (≥992px) | Dispositivos grandes Desktops (≥1200px) | |
---|---|---|---|---|
Comportamento da grade | Horizontal em todos os momentos | Recolhido para iniciar, horizontal acima dos pontos de interrupção | ||
Largura do contêiner | Nenhum (automático) | 750px | 970px | 1170px |
Prefixo da classe | .col-xs- |
.col-sm- |
.col-md- |
.col-lg- |
# de colunas | 12 | |||
Largura da coluna | Auto | ~62px | ~81px | ~97px |
largura da calha | 30px (15px em cada lado de uma coluna) | |||
encaixável | Sim | |||
Compensações | Sim | |||
Ordenação das colunas | Sim |
Usando um único conjunto de .col-md-*
classes de grade, você pode criar um sistema de grade básico que começa empilhado em dispositivos móveis e tablets (o intervalo extra pequeno a pequeno) antes de se tornar horizontal em dispositivos desktop (médio). Coloque colunas de grade em qualquer arquivo .row
.
Transforme qualquer layout de grade de largura fixa em um layout de largura total alterando seu mais externo .container
para .container-fluid
.
Não quer que suas colunas simplesmente empilhem em dispositivos menores? Use as classes de grade de dispositivo extra pequeno e médio adicionando .col-xs-*
.col-md-*
às suas colunas. Veja o exemplo abaixo para ter uma ideia melhor de como tudo funciona.
Com base no exemplo anterior, crie layouts ainda mais dinâmicos e poderosos com .col-sm-*
classes de tablet.
Se mais de 12 colunas forem colocadas em uma única linha, cada grupo de colunas extras será, como uma unidade, agrupado em uma nova linha.
Com as quatro camadas de grades disponíveis, você provavelmente encontrará problemas em que, em determinados pontos de interrupção, suas colunas não são claras, pois uma é mais alta que a outra. Para corrigir isso, use uma combinação de a .clearfix
e nossas classes de utilitário responsivo .
Além de limpar a coluna em pontos de interrupção responsivos, pode ser necessário redefinir deslocamentos, pushes ou pulls . Veja isso em ação no exemplo de grade .
Mova as colunas para a direita usando .col-md-offset-*
classes. Essas classes aumentam a margem esquerda de uma coluna por *
colunas. Por exemplo, .col-md-offset-4
move -se .col-md-4
por quatro colunas.
Você também pode substituir os deslocamentos das camadas de grade inferiores com .col-*-offset-0
classes.
Para aninhar seu conteúdo com a grade padrão, adicione um novo .row
e um conjunto de .col-sm-*
colunas em uma .col-sm-*
coluna existente. As linhas aninhadas devem incluir um conjunto de colunas que somam 12 ou menos (não é necessário usar todas as 12 colunas disponíveis).
Altere facilmente a ordem de nossas colunas de grade integradas com classes .col-md-push-*
e .col-md-pull-*
modificadoras.
Além de classes de grade pré -construídas para layouts rápidos, o Bootstrap inclui menos variáveis e mixins para gerar rapidamente seus próprios layouts simples e semânticos.
As variáveis determinam o número de colunas, a largura da medianiz e o ponto de consulta de mídia no qual as colunas flutuantes devem ser iniciadas. Nós os usamos para gerar as classes de grade predefinidas documentadas acima, bem como para os mixins personalizados listados abaixo.
Mixins são usados em conjunto com as variáveis de grade para gerar CSS semântico para colunas de grade individuais.
Você pode modificar as variáveis para seus próprios valores personalizados ou apenas usar os mixins com seus valores padrão. Aqui está um exemplo de como usar as configurações padrão para criar um layout de duas colunas com um intervalo entre elas.
Todos os cabeçalhos HTML, <h1>
por meio <h6>
de , estão disponíveis. .h1
as classes through .h6
também estão disponíveis, para quando você deseja combinar o estilo da fonte de um título, mas ainda deseja que seu texto seja exibido em linha.
h1. Título de inicialização |
Seminegrito 36px |
h2. Título de inicialização |
Seminegrito 30px |
h3. Título de inicialização |
Seminegrito 24px |
h4. Título de inicialização |
Seminegrito 18px |
h5. Título de inicialização |
Seminegrito 14px |
h6. Título de inicialização |
Seminegrito 12px |
Crie um texto secundário mais leve em qualquer título com uma <small>
tag genérica ou a .small
classe.
h1. Cabeçalho de bootstrap Texto secundário |
h2. Cabeçalho de bootstrap Texto secundário |
h3. Cabeçalho de bootstrap Texto secundário |
h4. Cabeçalho de bootstrap Texto secundário |
h5. Cabeçalho de bootstrap Texto secundário |
h6. Cabeçalho de bootstrap Texto secundário |
O padrão global do Bootstrap font-size
é 14px , com um line-height
de 1.428 . Isso se aplica ao <body>
e a todos os parágrafos. Além disso, <p>
(parágrafos) recebem uma margem inferior de metade da altura da linha calculada (10px por padrão).
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.
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec ullamcorper nulla non metus auctor fringilla. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla.
Mecenas sed diam eget risus varius blandit sit amet non magna. Donec id elit non mi porta gravida at eget metus. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.
Faça um parágrafo se destacar adicionando .lead
.
Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non comodo luctus.
A escala tipográfica é baseada em duas variáveis Less em variables.less : @font-size-base
e @line-height-base
. O primeiro é o tamanho da fonte base usado e o segundo é a altura da linha base. Usamos essas variáveis e algumas matemáticas simples para criar as margens, preenchimentos e alturas de linha de todos os nossos tipos e muito mais. Personalize-os e o Bootstrap se adapta.
Para destacar uma sequência de texto devido à sua relevância em outro contexto, use a <mark>
tag.
Você pode usar a marca de marca pararealçartexto.
Para indicar blocos de texto que foram excluídos, use a <del>
tag.
Esta linha de texto deve ser tratada como texto excluído.
Para indicar blocos de texto que não são mais relevantes, use a <s>
tag.
Esta linha de texto deve ser tratada como não mais precisa.
Para indicar adições ao documento, use a <ins>
tag.
Esta linha de texto deve ser tratada como uma adição ao documento.
Para sublinhar o texto, use a <u>
tag.
Esta linha de texto será renderizada como sublinhada
Faça uso das tags de ênfase padrão do HTML com estilos leves.
Para enfatizar inline ou blocos de texto, use a <small>
tag para definir o texto em 85% do tamanho do pai. Os elementos de título recebem seus próprios elementos font-size
aninhados <small>
.
Você também pode usar um elemento embutido .small
no lugar de qualquer <small>
.
Esta linha de texto deve ser tratada como letras miúdas.
Para enfatizar um trecho de texto com um peso de fonte mais pesado.
O trecho de texto a seguir é renderizado como texto em negrito .
Para enfatizar um trecho de texto com itálico.
O trecho de texto a seguir é renderizado como texto em itálico .
Sinta-se livre para usar <b>
e <i>
em HTML5. <b>
destina-se a destacar palavras ou frases sem transmitir importância adicional, enquanto <i>
é principalmente para voz, termos técnicos, etc.
Realinhe facilmente o texto aos componentes com classes de alinhamento de texto.
Texto alinhado à esquerda.
Texto alinhado ao centro.
Texto alinhado à direita.
Texto justificado.
Sem quebra de texto.
Transforme texto em componentes com classes de capitalização de texto.
Texto em minúsculas.
Texto em maiúsculas.
Texto em maiúscula.
Implementação estilizada do <abbr>
elemento HTML para abreviaturas e siglas para mostrar a versão expandida ao passar o mouse. As abreviações com um title
atributo têm uma borda inferior pontilhada clara e um cursor de ajuda ao passar o mouse, fornecendo contexto adicional ao passar o mouse e aos usuários de tecnologias assistivas.
Uma abreviação da palavra atributo é attr .
Adicione .initialism
a uma abreviação para um tamanho de fonte um pouco menor.
HTML é a melhor coisa desde o pão fatiado.
Apresente as informações de contato do antepassado mais próximo ou de todo o trabalho. Preserve a formatação terminando todas as linhas com <br>
.
Para citar blocos de conteúdo de outra fonte em seu documento.
Envolva <blockquote>
qualquer HTML como a citação. Para cotações diretas, recomendamos um <p>
.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Mudanças de estilo e conteúdo para variações simples de um padrão <blockquote>
.
Adicione um <footer>
para identificar a fonte. Envolva o nome do trabalho de origem em <cite>
.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Adicione .blockquote-reverse
para um blockquote com conteúdo alinhado à direita.
Uma lista de itens em que a ordem não importa explicitamente.
Uma lista de itens em que a ordem importa explicitamente.
Remova o padrão list-style
e a margem esquerda nos itens da lista (somente filhos imediatos). Isso se aplica apenas a itens de lista filhos imediatos , o que significa que você também precisará adicionar a classe para qualquer lista aninhada.
Coloque todos os itens da lista em uma única linha com display: inline-block;
um leve preenchimento.
Uma lista de termos com suas descrições associadas.
Faça termos e descrições <dl>
alinhados lado a lado. Começa empilhado como <dl>
s padrão, mas quando a barra de navegação se expande, faça isso.
As listas de descrição horizontal truncarão termos muito longos para caber na coluna da esquerda com text-overflow
. Em viewports mais estreitas, eles mudarão para o layout empilhado padrão.
Envolva trechos de código embutidos com <code>
.
<section>
deve ser encapsulado como embutido.
Use o <kbd>
para indicar a entrada que normalmente é inserida via teclado.
Use <pre>
para várias linhas de código. Certifique-se de escapar quaisquer colchetes angulares no código para renderização adequada.
<p>Exemplo de texto aqui...</p>
Opcionalmente, você pode adicionar a .pre-scrollable
classe, que definirá uma altura máxima de 350px e fornecerá uma barra de rolagem do eixo y.
Para indicar variáveis, use a <var>
tag.
y = mx + b _
Para indicar a saída de amostra de blocos de um programa, use o <samp>
tag.
Este texto deve ser tratado como saída de amostra de um programa de computador.
Para um estilo básico - preenchimento leve e apenas divisores horizontais - adicione a classe base .table
a qualquer arquivo <table>
. Pode parecer super redundante, mas devido ao uso generalizado de tabelas para outros plugins como calendários e seletores de data, optamos por isolar nossos estilos de tabela personalizados.
# | Primeiro nome | Sobrenome | Nome de usuário |
---|---|---|---|
1 | Marca | Otto | @mdo |
2 | Jacó | Thornton | @gordo |
3 | Larry | o pássaro |
Use .table-striped
para adicionar listras de zebra a qualquer linha da tabela dentro do arquivo <tbody>
.
As tabelas distribuídas são estilizadas por meio do :nth-child
seletor CSS, que não está disponível no Internet Explorer 8.
# | Primeiro nome | Sobrenome | Nome de usuário |
---|---|---|---|
1 | Marca | Otto | @mdo |
2 | Jacó | Thornton | @gordo |
3 | Larry | o pássaro |
Adicione .table-bordered
para bordas em todos os lados da tabela e células.
# | Primeiro nome | Sobrenome | Nome de usuário |
---|---|---|---|
1 | Marca | Otto | @mdo |
2 | Jacó | Thornton | @gordo |
3 | Larry | o pássaro |
Adicione .table-hover
para habilitar um estado de foco nas linhas da tabela em um arquivo <tbody>
.
# | Primeiro nome | Sobrenome | Nome de usuário |
---|---|---|---|
1 | Marca | Otto | @mdo |
2 | Jacó | Thornton | @gordo |
3 | Larry | o pássaro |
Adicione .table-condensed
para tornar as tabelas mais compactas cortando o preenchimento das células pela metade.
# | Primeiro nome | Sobrenome | Nome de usuário |
---|---|---|---|
1 | Marca | Otto | @mdo |
2 | Jacó | Thornton | @gordo |
3 | Larry o pássaro |
Use classes contextuais para colorir linhas da tabela ou células individuais.
Classe | Descrição |
---|---|
.active |
Aplica a cor de foco a uma linha ou célula específica |
.success |
Indica uma ação bem-sucedida ou positiva |
.info |
Indica uma mudança ou ação informativa neutra |
.warning |
Indica um aviso que pode precisar de atenção |
.danger |
Indica uma ação perigosa ou potencialmente negativa |
# | Título da coluna | Título da coluna | Título da coluna |
---|---|---|---|
1 | Conteúdo da coluna | Conteúdo da coluna | Conteúdo da coluna |
2 | Conteúdo da coluna | Conteúdo da coluna | Conteúdo da coluna |
3 | Conteúdo da coluna | Conteúdo da coluna | Conteúdo da coluna |
4 | Conteúdo da coluna | Conteúdo da coluna | Conteúdo da coluna |
5 | Conteúdo da coluna | Conteúdo da coluna | Conteúdo da coluna |
6 | Conteúdo da coluna | Conteúdo da coluna | Conteúdo da coluna |
7 | Conteúdo da coluna | Conteúdo da coluna | Conteúdo da coluna |
8 | Conteúdo da coluna | Conteúdo da coluna | Conteúdo da coluna |
9 | Conteúdo da coluna | Conteúdo da coluna | Conteúdo da coluna |
Usar cores para adicionar significado a uma linha da tabela ou célula individual fornece apenas uma indicação visual, que não será transmitida aos usuários de tecnologias assistivas – como leitores de tela. Certifique-se de que as informações indicadas pela cor sejam óbvias no próprio conteúdo (o texto visível na linha/célula da tabela relevante) ou sejam incluídas por meios alternativos, como texto adicional oculto com a .sr-only
classe.
Crie tabelas responsivas envolvendo qualquer um .table
para .table-responsive
fazê-los rolar horizontalmente em dispositivos pequenos (abaixo de 768px). Ao visualizar em algo maior que 768px de largura, você não verá nenhuma diferença nessas tabelas.
As tabelas responsivas fazem uso de overflow-y: hidden
, que corta qualquer conteúdo que vá além das bordas inferior ou superior da tabela. Em particular, isso pode cortar menus suspensos e outros widgets de terceiros.
O Firefox tem um estilo estranho de conjunto de campos width
que interfere na tabela responsiva. Isso não pode ser substituído sem um hack específico do Firefox que não fornecemos no Bootstrap:
Para obter mais informações, leia esta resposta do Stack Overflow .
# | Título da tabela | Título da tabela | Título da tabela | Título da tabela | Título da tabela | Título da tabela |
---|---|---|---|---|---|---|
1 | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela |
2 | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela |
3 | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela |
# | Título da tabela | Título da tabela | Título da tabela | Título da tabela | Título da tabela | Título da tabela |
---|---|---|---|---|---|---|
1 | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela |
2 | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela |
3 | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela | Célula da tabela |
Os controles de formulário individuais recebem automaticamente algum estilo global. Todos os elementos textuais <input>
, <textarea>
e <select>
com .form-control
são definidos width: 100%;
por padrão. Enrole etiquetas e controles .form-group
para um espaçamento ideal.
Não misture grupos de formulários diretamente com grupos de entrada . Em vez disso, aninhe o grupo de entrada dentro do grupo de formulários.
Adicione .form-inline
ao seu formulário (que não precisa ser um <form>
) para controles alinhados à esquerda e de bloco embutido. Isso se aplica apenas a formulários em viewports com pelo menos 768 pixels de largura.
Entradas e seleções foram width: 100%;
aplicadas por padrão no Bootstrap. Nos formulários embutidos, redefinimos isso para width: auto;
que vários controles possam residir na mesma linha. Dependendo do seu layout, podem ser necessárias larguras personalizadas adicionais.
Os leitores de tela terão problemas com seus formulários se você não incluir um rótulo para cada entrada. Para esses formulários embutidos, você pode ocultar os rótulos usando a .sr-only
classe. Existem outros métodos alternativos de fornecer um rótulo para tecnologias assistivas, como o atributo aria-label
, aria-labelledby
ou . title
Se nenhum deles estiver presente, os leitores de tela podem recorrer ao uso do placeholder
atributo, se presente, mas observe que o uso de placeholder
como substituto de outros métodos de rotulagem não é recomendado.
Use as classes de grade predefinidas do Bootstrap para alinhar rótulos e grupos de controles de formulário em um layout horizontal adicionando .form-horizontal
ao formulário (que não precisa ser um <form>
). Isso altera .form-group
s para se comportar como linhas de grade, portanto, não há necessidade de .row
.
Exemplos de controles de formulário padrão suportados em um layout de formulário de exemplo.
Controle de formulário mais comum, campos de entrada baseados em texto. Inclui suporte para todos os tipos de HTML5: text
, password
, datetime
, datetime-local
, date
, month
, time
, week
, number
, email
, url
, search
, tel
e color
.
As entradas só serão totalmente estilizadas se type
forem declaradas corretamente.
Para adicionar texto ou botões integrados antes e/ou depois de qualquer texto baseado <input>
, confira o componente de grupo de entrada .
Controle de formulário que suporta várias linhas de texto. Altere rows
o atributo conforme necessário.
As caixas de seleção são para selecionar uma ou várias opções em uma lista, enquanto os rádios são para selecionar uma opção entre muitas.
Caixas de seleção e rádios desativados são suportados, mas para fornecer um cursor "não permitido" ao passar o mouse sobre o pai<label>
, você precisará adicionar a .disabled
classe ao pai .radio
, .radio-inline
, .checkbox
ou .checkbox-inline
.
Use as classes .checkbox-inline
ou .radio-inline
em uma série de caixas de seleção ou rádios para controles que aparecem na mesma linha.
Se você não tiver texto dentro do <label>
, a entrada será posicionada conforme o esperado. Atualmente só funciona em caixas de seleção e rádios não-in-line. Lembre-se de ainda fornecer algum tipo de rótulo para tecnologias assistivas (por exemplo, usando aria-label
).
Observe que muitos menus de seleção nativos - principalmente no Safari e no Chrome - têm cantos arredondados que não podem ser modificados por meio de border-radius
propriedades.
Para <select>
controles com o multiple
atributo, várias opções são mostradas por padrão.
Quando você precisar colocar texto simples ao lado de um rótulo de formulário em um formulário, use a .form-control-static
classe em um arquivo <p>
.
Removemos os outline
estilos padrão em alguns controles de formulário e aplicamos a box-shadow
em seu lugar para :focus
.
:focus
Estado de demonstraçãoA entrada de exemplo acima usa estilos personalizados em nossa documentação para demonstrar o :focus
estado em um arquivo .form-control
.
Adicione o disabled
atributo booleano em uma entrada para evitar interações do usuário. As entradas desativadas aparecem mais claras e adicionam um not-allowed
cursor.
Adicione o disabled
atributo a a <fieldset>
para desabilitar todos os controles dentro <fieldset>
de uma vez.
<a>
Por padrão, os navegadores tratarão todos os controles de formulário nativos ( <input>
, <select>
e <button>
elementos) dentro de <fieldset disabled>
como desabilitados, impedindo interações de teclado e mouse neles. No entanto, se o seu formulário também incluir <a ... class="btn btn-*">
elementos, eles receberão apenas um estilo de pointer-events: none
. Conforme observado na seção sobre estado desabilitado para botões (e especificamente na subseção para elementos âncora), essa propriedade CSS ainda não é padronizada e não é totalmente suportada no Opera 18 e abaixo, ou no Internet Explorer 11, e ganhou não impede que usuários de teclado consigam focar ou ativar esses links. Portanto, por segurança, use JavaScript personalizado para desativar esses links.
Embora o Bootstrap aplique esses estilos em todos os navegadores, o Internet Explorer 11 e versões anteriores não oferecem suporte total ao disabled
atributo em um arquivo <fieldset>
. Use JavaScript personalizado para desativar o conjunto de campos nesses navegadores.
Adicione o readonly
atributo booleano em uma entrada para evitar a modificação do valor da entrada. As entradas somente leitura parecem mais claras (assim como as entradas desabilitadas), mas mantêm o cursor padrão.
Texto de ajuda em nível de bloco para controles de formulário.
O texto de ajuda deve ser explicitamente associado ao controle de formulário ao qual se relaciona usando o aria-describedby
atributo. Isso garantirá que as tecnologias assistivas – como leitores de tela – anunciem esse texto de ajuda quando o usuário focar ou entrar no controle.
Bootstrap inclui estilos de validação para estados de erro, aviso e sucesso em controles de formulário. Para usar, adicione .has-warning
, .has-error
ou .has-success
ao elemento pai. Qualquer .control-label
, .form-control
e .help-block
dentro desse elemento receberá os estilos de validação.
O uso desses estilos de validação para denotar o estado de um controle de formulário fornece apenas uma indicação visual baseada em cores, que não será transmitida a usuários de tecnologias assistivas - como leitores de tela - ou a usuários daltônicos.
Certifique-se de que uma indicação alternativa de estado também seja fornecida. Por exemplo, você pode incluir uma dica sobre o estado no <label>
próprio texto do controle de formulário (como é o caso no exemplo de código a seguir), incluir um Glyphicon (com texto alternativo apropriado usando a .sr-only
classe - veja os exemplos de Glyphicon ), ou fornecendo um bloco de texto de ajuda adicional . Especificamente para tecnologias assistivas, controles de formulário inválidos também podem receber um aria-invalid="true"
atributo.
Você também pode adicionar ícones de feedback opcionais com a adição de .has-feedback
e o ícone certo.
Os ícones de feedback só funcionam com <input class="form-control">
elementos textuais.
O posicionamento manual dos ícones de feedback é necessário para entradas sem rótulo e para grupos de entrada com um complemento à direita. Você é fortemente encorajado a fornecer rótulos para todas as entradas por motivos de acessibilidade. Se você deseja impedir que os rótulos sejam exibidos, oculte-os com a .sr-only
classe. Se você precisar ficar sem rótulos, ajuste o top
valor do ícone de feedback. Para grupos de entrada, ajuste o right
valor para um valor de pixel apropriado dependendo da largura do seu complemento.
Para garantir que as tecnologias assistivas – como leitores de tela – transmitam corretamente o significado de um ícone, o texto oculto adicional deve ser incluído na .sr-only
classe e explicitamente associado ao controle de formulário relacionado ao uso aria-describedby
. Como alternativa, certifique-se de que o significado (por exemplo, o fato de haver um aviso para um campo de entrada de texto específico) seja transmitido de alguma outra forma, como alterar o texto do real <label>
associado ao controle de formulário.
Embora os exemplos a seguir já mencionem o estado de validação de seus respectivos controles de formulário no <label>
próprio texto, a técnica acima (usando .sr-only
text e aria-describedby
) foi incluída para fins ilustrativos.
.sr-only
rótulos ocultosSe você usar a .sr-only
classe para ocultar um controle de formulário <label>
(em vez de usar outras opções de rotulagem, como o aria-label
atributo), o Bootstrap ajustará automaticamente a posição do ícone assim que for adicionado.
Defina alturas usando classes como .input-lg
, e defina larguras usando classes de coluna de grade como .col-lg-*
.
Crie controles de formulário mais altos ou mais curtos que correspondam aos tamanhos dos botões.
Dimensione rapidamente rótulos e controles .form-horizontal
de formulário adicionando .form-group-lg
ou .form-group-sm
.
Envolva as entradas nas colunas da grade ou em qualquer elemento pai personalizado para impor facilmente as larguras desejadas.
Use as classes de botão em um elemento <a>
, <button>
ou <input>
.
Embora as classes de botão possam ser usadas em elementos <a>
e <button>
, apenas <button>
os elementos são suportados em nossos componentes nav e navbar.
Se os <a>
elementos forem usados para atuar como botões – acionando a funcionalidade na página, em vez de navegar para outro documento ou seção na página atual – eles também devem receber um arquivo role="button"
.
Como prática recomendada, é altamente recomendável usar o <button>
elemento sempre que possível para garantir a renderização correspondente em vários navegadores.
Entre outras coisas, há um bug no Firefox <30 que nos impede de configurar os botões baseados em line-height
of <input>
, fazendo com que eles não correspondam exatamente à altura de outros botões no Firefox.
Use qualquer uma das classes de botão disponíveis para criar rapidamente um botão com estilo.
Usar cores para adicionar significado a um botão fornece apenas uma indicação visual, que não será transmitida aos usuários de tecnologias assistivas – como leitores de tela. Certifique-se de que as informações indicadas pela cor sejam óbvias no próprio conteúdo (o texto visível do botão) ou incluídas por meios alternativos, como texto adicional oculto com a .sr-only
classe.
Gosta de botões maiores ou menores? Adicione .btn-lg
, .btn-sm
, ou .btn-xs
para tamanhos adicionais.
Crie botões de nível de bloco — aqueles que abrangem toda a largura de um pai — adicionando .btn-block
.
Os botões aparecerão pressionados (com um fundo mais escuro, borda mais escura e sombra inserida) quando ativos. Para <button>
elementos, isso é feito via :active
. Para <a>
elementos, é feito com .active
. No entanto, você pode usar .active
on <button>
s (e incluir o aria-pressed="true"
atributo) caso precise replicar o estado ativo programaticamente.
Não há necessidade de adicionar :active
, pois é uma pseudo-classe, mas se você precisar forçar a mesma aparência, vá em frente e adicione .active
.
Adicione a .active
classe aos <a>
botões.
Faça com que os botões pareçam inacessíveis ao esmaecê-los com opacity
.
Adicione o disabled
atributo aos <button>
botões.
Se você adicionar o disabled
atributo a um <button>
, o Internet Explorer 9 e versões inferiores renderizarão o texto em cinza com uma sombra de texto desagradável que não podemos corrigir.
Adicione a .disabled
classe aos <a>
botões.
Usamos .disabled
como uma classe utilitária aqui, semelhante à .active
classe comum, portanto, nenhum prefixo é necessário.
Essa classe pointer-events: none
tenta desabilitar a funcionalidade de link de <a>
s, mas essa propriedade CSS ainda não está padronizada e não é totalmente suportada no Opera 18 e abaixo, ou no Internet Explorer 11. Além disso, mesmo em navegadores que suportam pointer-events: none
, teclado a navegação permanece inalterada, o que significa que usuários de teclado com visão e usuários de tecnologias assistivas ainda poderão ativar esses links. Portanto, por segurança, use JavaScript personalizado para desativar esses links.
Imagens no Bootstrap 3 podem se tornar amigáveis com a adição da .img-responsive
classe. Isso se aplica max-width: 100%;
, height: auto;
e display: block;
à imagem para que ela seja dimensionada bem para o elemento pai.
Para centralizar imagens que usam a .img-responsive
classe, use .center-block
em vez de .text-center
. Consulte a seção de classes auxiliares para obter mais detalhes sobre .center-block
o uso.
No Internet Explorer 8-10, as imagens SVG com .img-responsive
tamanho desproporcional. Para corrigir isso, adicione width: 100% \9;
onde necessário. O Bootstrap não aplica isso automaticamente, pois causa complicações em outros formatos de imagem.
Adicione classes a um <img>
elemento para estilizar facilmente imagens em qualquer projeto.
Tenha em mente que o Internet Explorer 8 não tem suporte para cantos arredondados.
Transmita significado através da cor com um punhado de classes de utilidade de ênfase. Eles também podem ser aplicados a links e escurecerão ao passar o mouse, assim como nossos estilos de link padrão.
Fusce dapibus, tellus ac cursus comodo, tortor mauris nibh.
Nullam id dolor id nibh ultricies vehicula ut id elit.
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
Mecenas sed diam eget risus varius blandit sit amet non magna.
Etiam porta sem maleuada magna mollis euismod.
Donec ullamcorper nulla non metus auctor fringilla.
Às vezes, as classes de ênfase não podem ser aplicadas devido à especificidade de outro seletor. Na maioria dos casos, uma solução alternativa suficiente é envolver seu texto em um <span>
com a classe.
Usar cores para adicionar significado fornece apenas uma indicação visual, que não será transmitida aos usuários de tecnologias assistivas – como leitores de tela. Certifique-se de que as informações indicadas pela cor sejam óbvias do próprio conteúdo (as cores contextuais são usadas apenas para reforçar o significado que já está presente no texto/marcação) ou são incluídas por meios alternativos, como texto adicional oculto com a .sr-only
classe .
Semelhante às classes de cores de texto contextuais, defina facilmente o plano de fundo de um elemento para qualquer classe contextual. Os componentes âncora escurecerão ao passar o mouse, assim como as classes de texto.
Nullam id dolor id nibh ultricies vehicula ut id elit.
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
Mecenas sed diam eget risus varius blandit sit amet non magna.
Etiam porta sem maleuada magna mollis euismod.
Donec ullamcorper nulla non metus auctor fringilla.
Às vezes, as classes contextuais de fundo não podem ser aplicadas devido à especificidade de outro seletor. Em alguns casos, uma solução alternativa suficiente é envolver o conteúdo do seu elemento em a <div>
com a classe.
Tal como acontece com as cores contextuais , certifique-se de que qualquer significado transmitido pela cor também seja transmitido em um formato que não seja puramente de apresentação.
Use o ícone de fechamento genérico para dispensar conteúdo como modais e alertas.
Use acentos circunflexos para indicar a funcionalidade e a direção da lista suspensa. Observe que o cursor padrão será revertido automaticamente nos menus suspensos .
Flutue um elemento para a esquerda ou direita com uma classe. !important
está incluído para evitar problemas de especificidade. As classes também podem ser usadas como mixins.
Defina um elemento para display: block
e centralize via margin
. Disponível como mixin e classe.
Limpe s facilmente float
adicionando .clearfix
ao elemento pai . Utiliza o micro clearfix popularizado por Nicolas Gallagher. Também pode ser usado como mixin.
Forçar a exibição ou ocultação de um elemento ( inclusive para leitores de tela ) com o uso de .show
e .hidden
classes. Essas classes são usadas !important
para evitar conflitos de especificidade, assim como os quick floats . Eles estão disponíveis apenas para alternância de nível de bloco. Eles também podem ser usados como mixins.
.hide
está disponível, mas nem sempre afeta os leitores de tela e está obsoleto a partir da v3.0.1. Use .hidden
ou .sr-only
em vez disso.
Além disso, .invisible
pode ser usado para alternar apenas a visibilidade de um elemento, ou seja, ele display
não é modificado e o elemento ainda pode afetar o fluxo do documento.
Oculte um elemento para todos os dispositivos, exceto leitores de tela com extensão .sr-only
. Combine .sr-only
com .sr-only-focusable
para mostrar o elemento novamente quando estiver em foco (por exemplo, por um usuário apenas com teclado). Necessário para seguir as melhores práticas de acessibilidade . Também pode ser usado como mixins.
Utilize a .text-hide
classe ou mixin para ajudar a substituir o conteúdo de texto de um elemento por uma imagem de fundo.
Para um desenvolvimento mais rápido e otimizado para dispositivos móveis, use essas classes de utilitário para mostrar e ocultar conteúdo por dispositivo por meio de consulta de mídia. Também estão incluídas classes de utilitários para alternar o conteúdo quando impresso.
Tente usá-los de forma limitada e evite criar versões totalmente diferentes do mesmo site. Em vez disso, use-os para complementar a apresentação de cada dispositivo.
Use uma única ou uma combinação das classes disponíveis para alternar o conteúdo entre os pontos de interrupção da janela de visualização.
Dispositivos extra pequenosTelefones (<768px) | Dispositivos pequenosTablets (≥768px) | Dispositivos médiosDesktops (≥992px) | Dispositivos grandesDesktops (≥1200px) | |
---|---|---|---|---|
.visible-xs-* |
Visível | Escondido | Escondido | Escondido |
.visible-sm-* |
Escondido | Visível | Escondido | Escondido |
.visible-md-* |
Escondido | Escondido | Visível | Escondido |
.visible-lg-* |
Escondido | Escondido | Escondido | Visível |
.hidden-xs |
Escondido | Visível | Visível | Visível |
.hidden-sm |
Visível | Escondido | Visível | Visível |
.hidden-md |
Visível | Visível | Escondido | Visível |
.hidden-lg |
Visível | Visível | Visível | Escondido |
A partir da v3.2.0, as .visible-*-*
classes para cada ponto de interrupção vêm em três variações, uma para cada display
valor de propriedade CSS listado abaixo.
Grupo de aulas | CSSdisplay |
---|---|
.visible-*-block |
display: block; |
.visible-*-inline |
display: inline; |
.visible-*-inline-block |
display: inline-block; |
xs
Assim, para telas extra pequenas ( ), por exemplo, as .visible-*-*
classes disponíveis são: .visible-xs-block
, .visible-xs-inline
, e .visible-xs-inline-block
.
As classes .visible-xs
, .visible-sm
, .visible-md
e .visible-lg
também existem, mas estão obsoletas a partir da v3.2.0 . Eles são aproximadamente equivalentes a .visible-*-block
, exceto com casos especiais adicionais para alternar <table>
elementos relacionados.
Semelhante às classes responsivas regulares, use-as para alternar o conteúdo para impressão.
Aulas | Navegador | Imprimir |
---|---|---|
.visible-print-block .visible-print-inline .visible-print-inline-block |
Escondido | Visível |
.hidden-print |
Visível | Escondido |
A classe .visible-print
também existe, mas está obsoleta a partir da v3.2.0. É aproximadamente equivalente a .visible-print-block
, exceto com casos especiais adicionais para <table>
elementos relacionados.
Redimensione seu navegador ou carregue em diferentes dispositivos para testar as classes de utilitários responsivos.
Marcas de seleção verdes indicam que o elemento está visível em sua viewport atual.
Aqui, as marcas de seleção verdes também indicam que o elemento está oculto em sua viewport atual.
O CSS do Bootstrap é construído em Less, um pré-processador com funcionalidades adicionais como variáveis, mixins e funções para compilar CSS. Aqueles que procuram usar os arquivos fonte Less em vez de nossos arquivos CSS compilados podem fazer uso das inúmeras variáveis e mixins que usamos em todo o framework.
Variáveis de grade e mixins são abordados na seção Sistema de grade .
Bootstrap pode ser usado de pelo menos duas maneiras: com o CSS compilado ou com os arquivos fonte Less. Para compilar os arquivos Less, consulte a seção Getting Started para saber como configurar seu ambiente de desenvolvimento para executar os comandos necessários.
Ferramentas de compilação de terceiros podem funcionar com o Bootstrap, mas não são suportadas por nossa equipe principal.
As variáveis são usadas em todo o projeto como forma de centralizar e compartilhar valores comumente usados, como cores, espaçamento ou pilhas de fontes. Para um detalhamento completo, consulte o Personalizador .
Use facilmente dois esquemas de cores: tons de cinza e semânticos. As cores em tons de cinza fornecem acesso rápido a tons de preto comumente usados, enquanto a semântica inclui várias cores atribuídas a valores contextuais significativos.
Use qualquer uma dessas variáveis de cor como estão ou reatribua-as a variáveis mais significativas para o seu projeto.
Um punhado de variáveis para personalizar rapidamente os principais elementos do esqueleto do seu site.
Estilize facilmente seus links com a cor certa com apenas um valor.
Observe que o @link-hover-color
usa uma função, outra ferramenta incrível do Less, para criar automaticamente a cor de foco correta. Você pode usar darken
, lighten
, saturate
e desaturate
.
Defina facilmente seu tipo de letra, tamanho do texto, entrelinha e muito mais com algumas variáveis rápidas. O Bootstrap também os utiliza para fornecer mixins tipográficos fáceis.
Duas variáveis rápidas para personalizar o local e o nome do arquivo de seus ícones.
Os componentes do Bootstrap usam algumas variáveis padrão para definir valores comuns. Aqui estão os mais usados.
Mixins de fornecedores são mixins para ajudar a suportar vários navegadores, incluindo todos os prefixos de fornecedores relevantes em seu CSS compilado.
Redefina o modelo da caixa de seus componentes com um único mixin. Para contextualizar, veja este artigo útil da Mozilla .
O mixin está obsoleto a partir da v3.2.0, com a introdução do Autoprefixer. Para preservar a compatibilidade com versões anteriores, o Bootstrap continuará a usar o mixin internamente até o Bootstrap v4.
Hoje todos os navegadores modernos suportam a border-radius
propriedade não prefixada. Como tal, não há .border-radius()
mixin, mas o Bootstrap inclui atalhos para arredondar rapidamente dois cantos em um lado específico de um objeto.
Se o seu público-alvo estiver usando os melhores e mais recentes navegadores e dispositivos, certifique-se de usar a box-shadow
propriedade por conta própria. Se você precisar de suporte para dispositivos Android mais antigos (pré-v4) e iOS (pré-iOS 5), use o mixin obsoleto para pegar o -webkit
prefixo necessário.
O mixin está obsoleto a partir da v3.1.0, pois o Bootstrap não suporta oficialmente as plataformas desatualizadas que não suportam a propriedade padrão. Para preservar a compatibilidade com versões anteriores, o Bootstrap continuará a usar o mixin internamente até o Bootstrap v4.
Certifique-se de usar rgba()
cores nas sombras da caixa para que elas se misturem o mais perfeitamente possível com os fundos.
Múltiplos mixins para flexibilidade. Defina todas as informações de transição com uma ou especifique um atraso e duração separados conforme necessário.
Os mixins estão obsoletos a partir da v3.2.0, com a introdução do Autoprefixer. Para preservar a compatibilidade com versões anteriores, o Bootstrap continuará a usar os mixins internamente até o Bootstrap v4.
Girar, dimensionar, traduzir (mover) ou inclinar qualquer objeto.
Os mixins estão obsoletos a partir da v3.2.0, com a introdução do Autoprefixer. Para preservar a compatibilidade com versões anteriores, o Bootstrap continuará a usar os mixins internamente até o Bootstrap v4.
Um único mixin para usar todas as propriedades de animação do CSS3 em uma declaração e outros mixins para propriedades individuais.
Os mixins estão obsoletos a partir da v3.2.0, com a introdução do Autoprefixer. Para preservar a compatibilidade com versões anteriores, o Bootstrap continuará a usar os mixins internamente até o Bootstrap v4.
Defina a opacidade para todos os navegadores e forneça um filter
substituto para o IE8.
Forneça contexto para controles de formulário em cada campo.
Gere colunas via CSS em um único elemento.
Transforme facilmente quaisquer duas cores em um gradiente de fundo. Fique mais avançado e defina uma direção, use três cores ou use um gradiente radial. Com um único mixin, você obtém todas as sintaxes prefixadas necessárias.
Você também pode especificar o ângulo de um gradiente linear padrão de duas cores:
Se você precisa de um gradiente de estilo barbeiro, isso também é fácil. Basta especificar uma única cor e sobreporemos uma faixa branca translúcida.
Aumente a aposta e use três cores em vez disso. Defina a primeira cor, a segunda cor, o limite de cor da segunda cor (um valor percentual como 25%) e a terceira cor com estes mixins:
Atenção! Se você precisar remover um gradiente, certifique-se de remover qualquer específico do IE filter
que possa ter adicionado. Você pode fazer isso usando o .reset-filter()
mixin ao lado background-image: none;
de .
Mixins utilitários são mixins que combinam propriedades CSS não relacionadas para atingir um objetivo ou tarefa específica.
Esqueça a adição class="clearfix"
de qualquer elemento e, em vez disso, adicione o .clearfix()
mixin quando apropriado. Usa o micro clearfix de Nicolas Gallagher .
Centralize rapidamente qualquer elemento dentro de seu pai. Requer width
ou max-width
a ser definido.
Especifique as dimensões de um objeto com mais facilidade.
Configure facilmente as opções de redimensionamento para qualquer área de texto ou qualquer outro elemento. Padrões para o comportamento normal do navegador ( both
).
Trunque facilmente o texto com reticências com um único mixin. Requer que o elemento seja block
ou inline-block
nível.
Especifique dois caminhos de imagem e as dimensões de imagem @1x e o Bootstrap fornecerá uma consulta de mídia @2x. Se você tiver muitas imagens para servir, considere escrever manualmente o CSS da imagem retina em uma única consulta de mídia.
Embora o Bootstrap seja construído em Less, ele também possui uma porta oficial Sass . Nós o mantemos em um repositório GitHub separado e lidamos com atualizações com um script de conversão.
Como o port Sass tem um repositório separado e atende a um público um pouco diferente, o conteúdo do projeto difere muito do projeto principal do Bootstrap. Isso garante que a porta Sass seja compatível com o maior número possível de sistemas baseados em Sass.
Caminho | Descrição |
---|---|
lib/ |
Código gem Ruby (configuração Sass, integrações Rails e Compass) |
tasks/ |
Scripts de conversão (transformando menos para Sass upstream) |
test/ |
Testes de compilação |
templates/ |
Manifesto do pacote da bússola |
vendor/assets/ |
Sass, JavaScript e arquivos de fonte |
Rakefile |
Tarefas internas, como rake e converter |
Visite o repositório GitHub da porta Sass para ver esses arquivos em ação.
Para obter informações sobre como instalar e usar o Bootstrap for Sass, consulte o leia-me do repositório GitHub . É a fonte mais atualizada e inclui informações para uso com Rails, Compass e projetos Sass padrão.