Um gradiente radial é definido pelo seu centro.
Para criar um gradiente radial você também deve definir pelo menos duas paradas de cor.
background-image: radial-gradient(shape size at position, start-color, ..., last-color);
Por padrão, a forma é elipse, o tamanho é o canto mais distante e a posição é o centro.
Gradiente Radial - Interrupções de cores com espaçamento uniforme (este é o padrão)
O exemplo a seguir mostra um gradiente radial com limites de cores uniformemente espaçados:
#grad {
background-image: radial-gradient(red, yellow, green);
}
Experimente você mesmo →
<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
height: 150px;
width: 200px;
background-color: red; /* For browsers that do not support gradients */
background-image: radial-gradient(red, yellow, green);
}
</style>
</head>
<body>
<h1>Radial Gradient - Evenly Spaced Color Stops</h1>
<div id="grad1"></div>
</body>
</html>
Gradiente radial - paradas de cores com espaçamento diferente
O exemplo a seguir mostra um gradiente radial com limites de cores espaçados de forma diferente:
#grad {
background-image: radial-gradient(red 5%, yellow 15%, green 60%);
}
Experimente você mesmo →
<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
height: 150px;
width: 200px;
background-color: red; /* For browsers that do not support gradients */
background-image: radial-gradient(red 5%, yellow 15%, green 60%);
}
</style>
</head>
<body>
<h1>Radial Gradient - Differently Spaced Color Stops</h1>
<div id="grad1"></div>
</body>
</html>
O parâmetro shape define a forma. Pode assumir o valor círculo ou elipse. O valor padrão é elipse.
O exemplo a seguir mostra um gradiente radial com a forma de um círculo:
#grad {
background-image: radial-gradient(circle, red, yellow, green);
}
Experimente você mesmo →
<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
height: 150px;
width: 200px;
background-color: red; /* For browsers that do not support gradients */
background-image: radial-gradient(red, yellow, green);
}
#grad2 {
height: 150px;
width: 200px;
background-color: red; /* For browsers that do not support gradients */
background-image: radial-gradient(circle, red, yellow, green);
}
</style>
</head>
<body>
<h1>Radial Gradient - Shapes</h1>
<h2>Ellipse (this is default):</h2>
<div id="grad1"></div>
<h2><strong>Circle:</strong></h2>
<div id="grad2"></div>
</body>
</html>
O parâmetro size
define o tamanho do gradiente. Pode assumir quatro valores:
closest-side
farthest-side
closest-corner
farthest-corner
Um gradiente radial com palavras-chave de tamanhos diferentes:
#grad1 {
background-image: radial-gradient(closest-side at 60% 55%, red, yellow,
black);
}
#grad2 {
background-image: radial-gradient(farthest-side at 60%
55%, red, yellow, black);
}
Experimente você mesmo →
<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
height: 150px;
width: 150px;
background-color: red; /* For browsers that do not support gradients */
background-image: radial-gradient(closest-side at 60% 55%, red, yellow, black);
}
#grad2 {
height: 150px;
width: 150px;
background-color: red; /* For browsers that do not support gradients */
background-image: radial-gradient(farthest-side at 60% 55%, red, yellow, black);
}
#grad3 {
height: 150px;
width: 150px;
background-color: red; /* For browsers that do not support gradients */
background-image: radial-gradient(closest-corner at 60% 55%, red, yellow, black);
}
#grad4 {
height: 150px;
width: 150px;
background-color: red; /* For browsers that do not support gradients */
background-image: radial-gradient(farthest-corner at 60% 55%, red, yellow, black);
}
</style>
</head>
<body>
<h1>Radial Gradients - Different size keywords</h1>
<h2>closest-side:</h2>
<div id="grad1"></div>
<h2>farthest-side:</h2>
<div id="grad2"></div>
<h2>closest-corner:</h2>
<div id="grad3"></div>
<h2>farthest-corner (default):</h2>
<div id="grad4"></div>
</body>
</html>
A função repeating-radial-gradient()
é usada para repetir gradientes radiais:
Um gradiente radial repetido:
#grad {
background-image:
repeating-radial-gradient(red, yellow 10%, green 15%);
}
Experimente você mesmo →
<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
height: 150px;
width: 200px;
background-color: red; /* For browsers that do not support gradients */
background-image: repeating-radial-gradient(red, yellow 10%, green 15%);
}
</style>
</head>
<body>
<h1>Repeating Radial Gradient</h1>
<div id="grad1"></div>
</body>
</html>