Propriedade grid
A propriedade grid representa uma
forma abreviada de escrever todas as propriedades de colunas
e linhas do contêiner de grid. Todos os
valores são escritos em uma única linha, separados por barra.
Através do grid, em uma única linha, pode-se descrever
apenas um tipo de propriedades -
explícitas (grid-template-rows,
grid-template-columns,
grid-template-areas)
ou implícitas (grid-auto-rows,
grid-auto-columns,
grid-auto-flow).
As propriedades que
permanecem não especificadas
assumem seus valores padrão.
Sintaxe
elemento {
grid: propriedades da grid;
}
Exemplo
Vamos criar uma tabela
usando a propriedade grid:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div>
#parent {
display: grid;
grid: 1fr 1fr 1fr / 1fr 1fr 1fr;
border: 2px solid #696989;
padding: 10px;
width: 400px;
height: 200px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Exemplo
Agora vamos definir para a segunda e terceira linhas a mesma altura, e para cada coluna - uma largura diferente:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div>
#parent {
display: grid;
grid: 60px 1fr 60px / 20% 1fr 15%;
border: 2px solid #696989;
padding: 10px;
width: 400px;
height: 300px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Exemplo
Agora, na tabela do exemplo anterior, vamos fazer a linha superior com altura de duas frações, e a primeira coluna - com metade de uma fração:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div>
#parent {
display: grid;
grid: 2fr 1fr 1fr / 0.5fr 1fr 1fr;
border: 2px solid #696989;
padding: 10px;
width: 400px;
height: 400px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Veja também
-
a propriedade
grid-template,
que define a quantidade e largura das colunas e linhas para um elemento -
a propriedade
grid-template-rows,
que define a quantidade e altura das linhas no grid -
a propriedade
grid-template-columns,
que define a quantidade e largura das colunas no grid -
a propriedade
grid-template-areas,
que define o posicionamento dos elementos no grid -
a propriedade
grid-auto-flow,
que define o posicionamento automático dos elementos na grid