# Grid
Nosso Grid é criado a partir de classes CSS, utilizando Flexbox e de forma responsiva seguindo a ideia de Mobile First.
Aqui vamos ter alguns exemplos de uso do nosso Grid, assim como explicações de como utiliza-lo da melhor forma em conjunto com o Figma e os Designers.
# Simples
Uso simples do Grid, as colunas (c-col
ou c-col-*
) devem ser sempre utilizadas dentro das linhas (c-row
), e o container c-container
deve ser sempre utilizado em volta da página como um todo (em um layout por exemplo).
<div class="c-container"> <div class="c-row"> <div class="c-col"> <div> Coluna 1 </div> </div> <div class="c-col"> <div> Coluna 2 </div> </div> <div class="c-col"> <div> Coluna 3 </div> </div> </div> </div>
# Colunas e Breakpoints
Para definir colunas específicas por breakpoint, é só usar o prefixo do breakpoint desejado na frente em conjunto com as outras classes.
Exemplo: 3 colunas ocupando 100% do espaço no mobile, passando a ter layouts diferentes no tablet e desktop.
<div class="c-container">
<div class="c-row">
<div class="c-col-2 sm:c-col-3 md:c-col-4">
<div>
Coluna 1
</div>
</div>
<div class="c-col-2 sm:c-col-3 md:c-col-4">
<div>
Coluna 2
</div>
</div>
<div class="c-col-2 sm:c-col-6 md:c-col-4">
<div>
Coluna 3
</div>
</div>
</div>
</div>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# Colunas e Figma
Nossas colunas seguem a mesma definição de colunas do Figma (opens new window), respeitando o número máximo de colunas disponíveis para cada tipo de dispositivo (tamanho de tela).
Para visualizar a grade de colunas no Figma, selecione o frame do Figma e pressione Ctrl + G (Mac)
Sendo assim, para implementar as colunas do Figma basta utilizar as classes de c-col-x
se adaptando dependendo do breakpoint.
# Colunas Mobile
Para os viewports que variam entre Mobile e Mobile Small. Limitado a 2 colunas conforme as definições do Figma.
Para uma referência dos tamanhos dos breakpoints e viewports veja na aba de API
Código | Figma |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# Colunas Tablet
Para os viewports que variam entre Tablet Portrait e Tablet Landscape. Limitado a 6 colunas conforme as definições do Figma.
Para uma referência dos tamanhos dos breakpoints e viewports veja na aba de API
Código | Figma |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# Colunas Desktop
Para os viewports que variam entre Desktop e Desktop Large. Limitado a 12 colunas conforme as definições do Figma.
Para uma referência dos tamanhos dos breakpoints e viewports veja na aba de API
Código | Figma |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# Largura Máxima
Para definir uma largura máxima para o container, temos hoje dois tamanhos definidos o lg
e o xl
e eles podem ser usados como modificadores do c-container
.
<div class="c-container-lg"> <div class="c-row"> <div class="c-col"> <div> Container LG Máximo de 1440px </div> </div> </div> </div> <div class="c-container-xl"> <div class="c-row"> <div class="c-col"> <div> Container XL Máximo de 1900px </div> </div> </div> </div> <div class="c-container"> <div class="c-row"> <div class="c-col"> <div> Container Fluido </div> </div> </div> </div>
# Roadmap
Roadmap de melhorias para nosso grid:
- Disponibilizar uma forma de as aplicações usarem as variáveis de media-query, ou os custom medias
- Experimentar colunas utilizando unidades relativas ao tamanho da tela (vw, vmin, vmax)