Estou tentando seguir um exemplo muito básico. Usando a página inicial e o sistema de grade , eu esperava o seguinte:
<div class="row">
<div class="span12">
<h1>Bootstrap starter template</h1>
<p>Example text.</p>
</div>
</div>
... produziria texto centralizado.
No entanto, ele ainda aparece na extrema esquerda. O que estou fazendo errado?
<center>
foi preterido em favor dotext-align: center
que, aliás, é exatamente o que a classe de autoinicialização.text-center
envolve.Respostas:
Isto é para a centralização de texto ( que era a questão )
Para outros tipos de conteúdo, consulte a resposta de Flavien .
Atualização: Bootstrap 2.3.0+ Answer
A resposta original era para uma versão inicial do bootstrap. No bootstrap 2.3.0, você pode simplesmente dar a div a classe
.text-center
.Resposta original (pré 2.3.0)
Você precisa definir uma das duas classes
row
ouspan12
com atext-align: center
. Consulte http://jsfiddle.net/xKSUH/ ou http://jsfiddle.net/xKSUH/1/fonte
text-align: center
padrão não é o padrão nessas classes. Normalmente, o padrão será oleft
alinhamento..pagination-centered
também funciona: P salva o pressionamento de tecla da adição de outra classe.pagination-centered
requer que você adicione outra classe ao html. Minha resposta anterior à 2.3.0 requer apenas uma para expandir a definição de propriedade de uma classe já existente. Além disso, se você olhar para os comentários na respostapagination-centered
, encontrará algumas objeções e avisos relacionados a isso. Mas se funcionar para você no seu caso - vá para ele! :-)NOTA: isso foi removido no Bootstrap 3 .
Antes do Bootstrap 3, você poderia usar a classe CSS
pagination-centered
assim:A classe
pagination-centered
já está em bootstrap.css (ou bootstrap.min.css) e possui a única regra:Com o Bootstrap 2.3.0. apenas use classe
text-center
fonte
.text-center
no pai é a solução correta para esta versão.Eu acho que a maioria das pessoas aqui está realmente procurando uma maneira de centralizar o todo
div
e não apenas o conteúdo do texto (o que é trivial ...).A segunda maneira (em vez de usar text-align: center) para centralizar as coisas no HTML é ter um elemento com largura fixa e margem automática (esquerda e direita). Com o Bootstrap, o estilo que define margens automáticas é a classe "container".
Dê uma olhada aqui para um violino: http://jsfiddle.net/D2RLR/7788/
fonte
col-*offset-*
. por exemplo<div class="col-10 offset-1">
ou<div class="col-8 offset-2">
Atualização 2019 - Bootstrap 4
"Conteúdo centrado" pode significar muitas coisas diferentes, e a centralização do Bootstrap mudou muito desde a postagem original.
Centro Horizontal
Bootstrap 3
text-center
é usado paradisplay:inline
elementoscenter-block
centralizardisplay:block
elementoscol-*offset-*
centralizar colunas da gradeDemonstração Bootstrap 3 Centralização Horizontal
Bootstrap 4
text-center
ainda é usado paradisplay:inline
elementosmx-auto
substituicenter-block
para centralizardisplay:block
elementosoffset-*
oumx-auto
pode ser usado para centralizar colunas da gradejustify-content-center
norow
também pode ser usado para o centrocol-*
mx-auto
(margens de auto eixo x) vai centrardisplay:block
oudisplay:flex
os elementos que têm uma largura definida , (%
,vw
,px
, etc ..). O Flexbox é usado por padrão nas colunas da grade, portanto, também existem vários métodos de centralização do flexbox.Demonstração Bootstrap 4 Centralização Horizontal
Vertical Center
Agora que o Bootstrap 4 é flexbox por padrão, existem muitas abordagens diferentes para o alinhamento vertical usando: margens automáticas , utilitários flexbox ou os utilitários de exibição junto com os utilitários de alinhamento vertical . A princípio, "utilitários de alinhamento vertical" parece óbvio, mas eles funcionam apenas com elementos de exibição em linha e em tabela. Aqui estão algumas opções de centralização vertical do Bootstrap 4.
1 - Centro vertical usando margens automáticas:
Outra maneira de centralizar verticalmente é usar
my-auto
. Isso centralizará o elemento dentro de seu contêiner. Por exemplo,h-100
aumenta a altura da linha emy-auto
centraliza verticalmente acol-sm-12
coluna.Demonstração de centro vertical usando margens automáticas
my-auto
representa margens no eixo y vertical e é equivalente a:2 - Centro vertical com Flexbox:
Como o Bootstrap 4
.row
está agora,display:flex
você pode simplesmente usaralign-self-center
em qualquer coluna para centralizá-lo verticalmente ...ou use
align-items-center
no todo.row
para alinhar verticalmente todo o alinhamentocol-*
na linha ...Demonstração de colunas de altura diferente do centro vertical
3 - Centro vertical usando os utilitários de exibição:
Bootstrap 4 tem utils de visualização que podem ser utilizados para
display:table
,display:table-cell
,display:inline
, etc .. Estes podem ser usados com os utils alinhamento vertical para alinhar em linha, em linha ou bloco de elementos de célula de tabela.Centro vertical usando a demonstração dos utilitários de exibição
fonte
.className-of-inner-div { display: inline-block; text-align: left; padding-top: 25%; padding-bottom: 20%; margin-top: auto; margin-bottom: auto; } .className-of-Grid-column { vertical-align:middle; text-align: center; }
O Bootstrap 3.1.1 possui uma
.center-block
classe para centralizar divs. Consulte: http://getbootstrap.com/css/#helper-classes-center .Ou, como outros já disseram, use a
.text-center
classe para centralizar o texto.fonte
A melhor maneira de fazer isso é definir um estilo css:
Então, sempre que você precisar de texto centralizado, adicione-o da seguinte forma:
ou se você quiser apenas a tag p centralizada:
Quanto menos CSS embutido você usar, melhor.
fonte
A classe .show-grid está aplicando o texto alinhado ao centro no exemplo no link.
Você sempre pode adicionar
style="text-align:center"
à sua linha div ou alguma outra classe que eu pensaria.fonte
Em fevereiro de 2013, em alguns casos, adicionei uma classe "centralizada" à div "span":
e para CSS:
A razão para isso é que o span * div é flutuado para a esquerda e a técnica de centralização "margem automática" funciona apenas se o div não for flutuado.
Demonstração (no JSFiddle): http://jsfiddle.net/5RpSh/8/embedded/result/
JSFiddle: http://jsfiddle.net/5RpSh/8/
fonte
Se você usa o Bootstrap 3, ele também possui uma classe CSS interna chamada .text-center . É isso que você quer.
Por favor, veja o exemplo em jsfiddle. http://jsfiddle.net/ucheng/Q4Fue/
fonte
O Bootstrap 2.3 tem uma
text-center
classe.fonte
Do meu lado, defino novos
CSS
estilos prontos para usar e fáceis de lembrar:É uma boa ideia? Existe alguma boa prática para isso?
fonte
span12
Se você estiver usando o Bootstrap 2.0+
Isso pode tornar a div centralizada na página.
fonte
Qualquer classe de utilitário de alinhamento de texto faria o truque. O Bootstrap usa a
.text-center
classe para centralizar o texto há muito tempo.Ou você pode criar seus próprios utilitários. Algumas variações que eu vi ao longo dos anos:
fonte
Você precisa ajustar com o
.span
.Exemplo:
fonte
Meu método preferido para centralizar blocos de informações enquanto mantém a capacidade de resposta (compatibilidade móvel) é colocar duas
span1
divs vazias antes e depois do conteúdo que você deseja centralizar.fonte
Para o Bootstrap versão 3.1.1 e superior, a melhor classe para centralizar o conteúdo é a
.center-block
classe auxiliar.fonte
Não use fluido de recipiente na principal.
fonte
centered
classe no seu código que criará muita confusãoO bloco central também é uma opção não referida nas respostas acima
Tudo o que a classe
center-block
faz é dizer ao elemento que tenha uma margem de 0 automático, sendo as margens esquerda / direita automática. No entanto, a menos que a classe text-center ou css text-align: center; é definido no pai, o elemento não sabe o ponto para calcular esse cálculo automático, portanto, não se centrará como previsto.Portanto, o centro de texto é uma opção melhor.
fonte
Você pode usar qualquer um dos tipos abaixo
text-center
.style = "text-align:center"
,.Use um deslocamento de coluna:
Exemplo:
<div class="col-md-offset-6 col-md-12"></div>
fonte
Criei esta classe para manter o centro, independentemente do tamanho da tela, mantendo os recursos responsivos:
fonte
Basta usar uma classe, no centro de texto, para a div ou tag que você deseja. Eu acho que pode funcionar bem. É uma classe Bootstrap para o centro de alinhamento de texto.
Aqui estão algumas classes de alinhamento de texto do Bootstrap:
fonte
Eu tentei de duas maneiras, e funcionou bem para centralizar o div. Ambas as formas alinham os divs em todas as telas.
Caminho 1: Usando o Push:
Caminho 2: Usando deslocamento:
Resultado:
Explicação
O Bootstrap designará, à esquerda, a primeira coluna da ocupação de tela especificada. Se usarmos offset ou push, a coluna 'this' será alterada por 'aquelas' muitas colunas. Embora eu tenha enfrentado alguns problemas em resposta à compensação, o push foi incrível.
fonte
Atualização 2018:
Em Bootstrap 4.1.3 , o conteúdo pode ser centrado usando a classe
mx-auto
.Referência: https://getbootstrap.com/docs/4.1/utilities/spacing/#horizontal-centering
fonte