Eu uso o estilo css de alinhamento de texto para alinhar o conteúdo dentro de um contêiner em HTML. Isso funciona bem enquanto o conteúdo é texto ou o navegador é o IE. Mas, caso contrário, não funciona.
Também como o nome sugere, é usado basicamente para alinhar o texto. A propriedade align foi descontinuada há muito tempo.
Existe alguma outra maneira de alinhar o conteúdo em html?
html
css
text-align
Hemanshu Bhojak
fonte
fonte
Respostas:
alinhar texto alinha o texto e outro conteúdo embutido. Não alinha os filhos do elemento de bloco.
Para fazer isso, você deseja dar ao elemento que deseja alinhar uma largura, com as margens esquerda e direita 'automáticas'. Essa é a maneira compatível com os padrões que funciona em qualquer lugar, exceto no IE5.x.
Para que isso funcione no IE6, é necessário garantir que o Modo de padrões esteja ativado usando um DOCTYPE adequado.
Se você realmente precisa oferecer suporte ao Modo IE5 / Quirks, que atualmente não deveria, é possível combinar as duas abordagens diferentes da centralização:
(Obviamente, os estilos devem ser colocados dentro de uma folha de estilo, mas a versão embutida é ilustrativa.)
fonte
Você pode fazer assim também:
HTML
CSS
Como Artem Russakovskii também mencionou, leia o artigo original de Mattew James Taylor para obter uma descrição completa.
fonte
fonte
Honestamente, eu odeio todas as soluções que eu vi até agora, e vou lhe dizer o porquê: elas parecem nunca a alinhar corretamente ... então aqui está o que eu costumo fazer:
Eu sei quais valores de pixel cada div e suas respectivas margens mantêm ... então eu faço o seguinte.
Vou criar uma div wrapper que tem uma posição absoluta e um valor à esquerda de 50% ... então essa div agora começa no meio da tela e subtraio metade de todo o conteúdo da largura da div ... e recebo um conteúdo de redimensionamento LINDO ... e acho que isso funciona em todos os navegadores também. Experimente você mesmo (este exemplo assume que todo o conteúdo do seu site está envolvido em uma tag div que usa essa classe de wrapper e todo o conteúdo tem 200px de largura):
EDIT: esqueci de adicionar ... você também pode querer definir width: 0px; neste wrapper div para alguns navegadores não mostrarem as barras de rolagem e, em seguida, você pode usar o posicionamento absoluto para todos os divs internos.
Isso também funciona de maneira INCRÍVEL para alinhar verticalmente seu conteúdo e usar top: 50% e margem superior. Felicidades!
fonte
Aqui está uma técnica que eu uso que funcionou bem:
fonte
Abaixo estão os métodos que sempre funcionaram para mim
Defina a exibição da div pai como
display: flex;
e você pode alinhar os elementos filhos dentro da div usando ojustify-content: center;
(para alinhar os itens no eixo principal) ealign-items: center;
(para alinhar os itens no eixo transversal).Se você possui mais de um elemento filho e deseja controlar a maneira como eles são organizados (coluna / linhas), também é possível adicionar
flex-direction
propriedade.Exemplo de trabalho:
2. (método mais antigo) Usando posição, propriedades de margem e tamanho fixo
Exemplo de trabalho:
fonte
Todas as respostas falam sobre alinhamento horizontal.
Para alinhar verticalmente vários elementos de conteúdo, dê uma olhada nesta abordagem:
fonte
Apenas outro exemplo usando HTML e CSS:
fonte