Os gradientes permitem criar transições suaves entre cores. No CSS, você pode aplicar gradientes como plano de
fundo usando as funções linear-gradient()
e radial-gradient()
.
linear-gradient()
)Cria uma transição em linha reta.
background-image: linear-gradient(direção, cor1, cor2, ..., corN);
90deg
(esquerda para direita), 45deg
(diagonal).
to top
(de baixo para cima). to right
(da esquerda para a direita). to bottom right
(diagonal superior esquerda para inferior direita).div {
background-image: linear-gradient(45deg, red, yellow);
}
radial-gradient()
)Cria uma transição circular ou elíptica.
background-image: radial-gradient(formato tamanho posição, cor1, cor2, ..., corN);
circle
(círculo) ou ellipse
(padrão, elipse). farthest-corner
(preenche o elemento) ou 200px
(tamanho
fixo). center
(padrão), top left
, etc.div {
background-image: radial-gradient(circle, red, yellow);
}
Use porcentagens após as cores para definir onde cada uma começa/termina:
div {
background-image: linear-gradient(to right, red 20%, yellow 80%);
}
red 20%
: Vermelho ocupa 20% do espaço antes de começar a transição. yellow 80%
: Amarelo termina aos 80%, criando uma zona sólida após esse ponto.Gradientes só são visíveis se o elemento tiver altura definida:
div {
height: 200px; /* Altura fixa */
/* ou */
min-height: 100vh; /* Altura mínima da tela */
}
div {
background-image: linear-gradient(
to right,
red,
orange 30%,
yellow 60%,
green
);
}
div {
background-image: radial-gradient(
circle at top left, /* Centro no canto superior esquerdo */
red,
yellow 70%
);
}
Use Ferramentas Visuais:
Transparência:
Use rgba()
para cores translúcidas:
background-image: linear-gradient(to bottom, rgba(255,0,0,0.5), rgba(0,0,255,0.5));
div {
background-image: repeating-linear-gradient(
45deg,
red,
red 10px,
blue 10px,
blue 20px
);
}