gap
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since October 2017.
A propriedade CSS
gap
define os espaços (gutters) entre as linhas e colunas. É uma propriedade shorthand
para row-gap
e column-gap
.
Experimente
É importante notar que grid-gap
é um pseudônimo para esta propriedade.
Sintaxe
/* Um valor de comprimento */
/* Tipo: <length> */
gap: 20px;
gap: 1em;
gap: 3vmin;
gap: 0.5cm;
/* Um valor de porcentagem */
/* Tipo: <percentage> */
gap: 16%;
gap: 100%;
/* Dois valores de comprimento */
gap: 20px 10px;
gap: 1em 0.5em;
gap: 3vmin 2vmax;
gap: 0.5cm 2mm;
/* Um ou dois valores de porcentagem */
gap: 16% 100%;
gap: 21px 82%;
/* Valores de calc() */
gap: calc(10% + 20px);
gap: calc(20px + 10%) calc(10% - 5px);
/* Valores globais */
gap: inherit;
gap: initial;
gap: revert;
gap: revert-layer;
gap: unset;
Esta propriedade é especificada como um valor para <'row-gap'>
seguido opcionalmente por um valor para <'column-gap'>
. Se o valor para <'column-gap'>
for omitido, este será definido como o mesmo valor de <'row-gap'>
.
Os valores de <'row-gap'>
e <'column-gap'>
são ambos especificados como <length>
ou <percentage>
.
Valores
<length>
-
É o comprimento do espaçamento (gutter) que separa as linhas do grid.
<percentage>
-
É o comprimento do espaçamento (gutter) que separa as linhas do grid, relativo à dimensão do elemento.
Definição formal
Initial value | as each of the properties of the shorthand:
|
---|---|
Aplica-se a | multi-column elements, flex containers, grid containers |
Inherited | não |
Computed value | as each of the properties of the shorthand:
|
Animation type | as each of the properties of the shorthand:
|
Sintaxe formal
gap =
<'row-gap'> <'column-gap'>?
<row-gap> =
normal |
<length-percentage [0,∞]>
<column-gap> =
normal |
<length-percentage [0,∞]>
<length-percentage> =
<length> |
<percentage>
Exemplos
Flex layout
HTML
<div id="flexbox">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
CSS
#flexbox {
display: flex;
flex-wrap: wrap;
width: 300px;
gap: 20px 5px;
}
#flexbox > div {
border: 1px solid green;
background-color: lime;
flex: 1 1 auto;
width: 100px;
height: 50px;
}
Resultado
Grid layout
HTML
<div id="grid">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
CSS
#grid {
display: grid;
height: 200px;
grid-template: repeat(3, 1fr) / repeat(3, 1fr);
gap: 20px 5px;
}
#grid > div {
border: 1px solid green;
background-color: lime;
}
Resultado
Layout de múltiplas colunas
HTML
<p class="content-box">
This is some multi-column text with a 40px column gap created with the CSS
<code>gap</code> property. Don't you think that's fun and exciting? I sure do!
</p>
CSS
.content-box {
column-count: 3;
gap: 40px;
}
Resultado
Especificações
Specification |
---|
CSS Box Alignment Module Level 3 # gap-shorthand |
Compatibilidade com navegadores
BCD tables only load in the browser
Veja também
- Propriedades CSS relacionadas:
row-gap
,column-gap
- Guia para layout Grid:
Conceitos básicos de Grid Layout - Gutters