Skip to main content

Como usar colunas CSS para layouts de site com várias colunas

Grid Layout • Crie layouts rapidamente com CSS3 (Abril 2025)

Grid Layout • Crie layouts rapidamente com CSS3 (Abril 2025)
Anonim

Por muitos anos, os carros alegóricos do CSS têm sido um componente necessário, ainda que necessário, na criação de layouts de sites. Se o seu design exigisse várias colunas, você passaria a flutuar. O problema com este método é que, apesar da incrível engenhosidade que os web designers / desenvolvedores demonstraram na criação de layouts de site complexos, os floats de CSS nunca foram feitos para serem usados ​​dessa maneira.

Embora os floats e o posicionamento de CSS tenham certeza de ter um lugar no design da Web por muitos anos, as novas técnicas de layout, incluindo CSS Grid e Flexbox, agora oferecem aos designers da Web novas maneiras de criar seus layouts de site. Outra nova técnica de layout que mostra muito potencial é Colunas Múltiplas CSS.

Colunas CSS já existem há alguns anos, mas a falta de suporte em navegadores mais antigos (principalmente versões mais antigas do Internet Explorer) impediu que muitos profissionais da Web usassem esses estilos em seu trabalho de produção.

Com o fim do suporte para as versões mais antigas do IE, alguns web designers agora estão experimentando novas opções de layout CSS, Colunas CSS incluídas e descobrindo que elas têm muito mais controle com essas novas abordagens do que com floats.

Noções básicas de colunas CSS

Como o próprio nome sugere, CSS Multiple Columns (também conhecido como CSS3 multi-column layout) permite dividir o conteúdo em um número definido de colunas. As propriedades CSS mais básicas que você usaria são:

  • contagem de colunas
  • lacuna de coluna

Para contagem de colunas, você especifica o número de colunas desejado. O intervalo da coluna seria as calhas ou espaçamento entre essas colunas. O navegador pegará esses valores e dividirá o conteúdo uniformemente no número de colunas que você especificar.

Um exemplo comum de várias colunas CSS na prática seria dividir um bloco de conteúdo de texto em várias colunas, semelhante ao que você veria em um artigo de jornal. Digamos que você tenha a seguinte marcação HTML (observe que, por exemplo, estou colocando apenas o início de um parágrafo, enquanto, na prática, provavelmente haveria vários parágrafos de conteúdo nessa marcação):

O título do seu artigo

Imagine muitos parágrafos de texto aqui …

Se você escreveu esses estilos CSS:

.content {-moz-column-count: 3; -webkit-column-count: 3; contagem de colunas: 3; -moz-column-gap: 30px; -webkit-column-gap: 30px; intervalo da coluna: 30 px; }

Essa regra de CSS dividiria a divisão de “conteúdo” em 3 colunas iguais, com um intervalo de 30 pixels entre elas. Se você quisesse duas colunas em vez de 3, você simplesmente alteraria esse valor e o navegador calcularia as novas larguras dessas colunas para dividir o conteúdo uniformemente. Observe que usamos primeiro as propriedades prefixadas pelo fornecedor, seguidas pelas declarações não prefixadas.

Por mais fácil que seja, seu uso dessa maneira é questionável para o uso do site. Sim, você pode dividir um monte de conteúdo em várias colunas, mas essa pode não ser a melhor experiência de leitura para a Web, especialmente se a altura dessas colunas ficar abaixo da "dobra" da tela.

Os leitores teriam que rolar para cima e para baixo, a fim de ler o conteúdo completo. Ainda assim, o principal das Colunas CSS é tão fácil quanto você vê aqui, e pode ser usado para fazer muito mais do que apenas dividir o conteúdo de alguns parágrafos - ele pode, de fato, ser usado para o layout.

Layout com colunas CSS

Digamos que você tenha uma página da Web com uma área de conteúdo com três colunas de conteúdo. Este é um layout de site muito típico, e para alcançar essas 3 colunas, você normalmente iria flutuar as divisões que estão dentro. Com CSS de várias colunas, é muito mais fácil.

Aqui está um exemplo de HTML:

Do nosso blog

Conteúdo iria aqui …

Usando Largura da Coluna

Há outra propriedade além da "contagem de colunas" que você pode usar e, dependendo das necessidades de layout, ela pode, na verdade, ser a melhor opção para o seu site. Esta é a "largura da coluna". Usando a mesma marcação HTML mostrada anteriormente, poderíamos fazer isso com nosso CSS:

.content {-moz-column-width: 500px; -webkit-column-width: 500px; largura da coluna: 500 px; -moz-column-gap: 30px; -webkit-column-gap: 30px; intervalo da coluna: 30 px; } .content div {display: inline-block; }

A maneira como isso funciona é que o navegador usa essa “largura de coluna” como o valor máximo dessa coluna. Portanto, se a janela do navegador tiver menos de 500 pixels de largura, essas 3 divisões aparecerão em uma única coluna, uma das partes superiores de outra. Esse é um layout típico usado para layouts de tela pequena / móvel.

À medida que a largura do navegador aumenta para ser grande o suficiente para caber em 2 colunas, juntamente com as lacunas de coluna especificadas, o navegador automaticamente passa de um layout de coluna única para duas colunas. Continue aumentando a largura da tela e, eventualmente, você obterá um design de 3 colunas, com cada uma das nossas 3 divisões exibidas em sua própria coluna. Novamente, essa é uma ótima maneira de obter layouts compatíveis com vários dispositivos e você não precisa nem usar consultas de mídia para alterar os estilos de layout.

Outras propriedades da coluna

Além das propriedades cobertas aqui, há também propriedades para “regra de coluna”, incluindo valores de cor, estilo e largura que permitem criar regras entre suas colunas. Estes seriam usados ​​em vez de bordas se você quiser ter algumas linhas separando suas colunas.

Hora de experimentar

Atualmente, o layout de colunas múltiplas CSS é muito bem suportado.Com prefixos, mais de 94% dos usuários da web poderiam ver esses estilos, e esse grupo não suportado seria apenas versões muito mais antigas do Internet Explorer que você pode não estar mais suportando de qualquer maneira.

Com esse nível de suporte agora em vigor, não há motivo para não começar a experimentar colunas CSS e implantar esses estilos em sites prontos para produção. Você pode começar suas experiências usando o HTML e CSS apresentados neste artigo e brincar com valores diferentes para ver o que funcionaria melhor para as necessidades de layout do seu site.