小码哥的IT人生

CSS 径向渐变 详解

css3基础 2022-05-23 12:07:17小码哥的IT人生shichen

CSS 径向渐变

CSS 径向渐变

径向渐变由其中心定义。

如需创建径向渐变,您还必须定义至少两个色标。

语法

background-image: radial-gradient(shape size at position, start-color, ..., last-color);

默认地,shape 为椭圆形,size 为最远角,position 为中心。

径向渐变-均匀间隔的色标(默认)

下面的例子展示了带有均匀间隔的色标的径向渐变:

 

示例代码:

#grad {
  background-image: radial-gradient(red, yellow, green);
}

 

完整实例【亲自试一试】:

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
  height: 150px;
  width: 200px;
  background-color: red; /* 针对不支持渐变的浏览器 */
  background-image: radial-gradient(red, yellow, green);
}
</style>
</head>
<body>
<h1>径向渐变 - 均匀间隔的色标</h1>
<div id="grad1"></div>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

径向渐变-不同间距的色标

下面的例子展示了一个径向渐变,其色标之间的间隔不同:

 

示例代码:

#grad {
  background-image: radial-gradient(red 5%, yellow 15%, green 60%);
}

 

完整实例【亲自试一试】:

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
  height: 150px;
  width: 200px;
  background-color: red; /* 针对不支持渐变的浏览器 */
  background-image: radial-gradient(red 5%, yellow 15%, green 60%);
}
</style>
</head>
<body>
<h1>径向渐变 - 不均匀间隔的色标</h1>
<div id="grad1"></div>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

设置形状

shape 参数定义形状。它可接受 circle 或 ellipse 值。默认值为 ellipse(椭圆)。

下面的例子展示了一个圆形的径向渐变:

 

示例代码:

#grad {
  background-image: radial-gradient(circle, red, yellow, green);
}

 

完整实例【亲自试一试】:

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
  height: 150px;
  width: 200px;
  background-color: red; /* 针对不支持渐变的浏览器 */
  background-image: radial-gradient(red, yellow, green);
}
#grad2 {
  height: 150px;
  width: 200px;
  background-color: red; /* 针对不支持渐变的浏览器 */
  background-image: radial-gradient(circle, red, yellow, green);
}
</style>
</head>
<body>
<h1>径向渐变 - 形状</h1>
<h2>椭圆(默认):</h2>
<div id="grad1"></div>
<h2>圆:</h2>
<div id="grad2"></div>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

使用大小不同的关键字

size 参数定义渐变的大小。它可接受四个值:

  1. closest-side
  2. farthest-side
  3. closest-corner
  4. farthest-corner

示例代码:

设置了不同 size 关键词的径向渐变:

#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);
}

 

完整实例【亲自试一试】:

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
  height: 150px;
  width: 150px;
  background-color: red; /* 针对不支持渐变的浏览器 */
  background-image: radial-gradient(closest-side at 60% 55%, red, yellow, black);
}
#grad2 {
  height: 150px;
  width: 150px;
  background-color: red; /* 针对不支持渐变的浏览器 */
  background-image: radial-gradient(farthest-side at 60% 55%, red, yellow, black);
}
#grad3 {
  height: 150px;
  width: 150px;
  background-color: red; /* 针对不支持渐变的浏览器 */
  background-image: radial-gradient(closest-corner at 60% 55%, red, yellow, black);
}
#grad4 {
  height: 150px;
  width: 150px;
  background-color: red; /* 针对不支持渐变的浏览器 */
  background-image: radial-gradient(farthest-corner at 60% 55%, red, yellow, black);
}
</style>
</head>
<body>
<h1>径向渐变 - 不同的 size 关键字s</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 (默认):</h2>
<div id="grad4"></div>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

重复径向渐变

repeating-radial-gradient() 函数用于重复径向渐变:

 

示例代码:

重复的径向渐变:

#grad {
  background-image: repeating-radial-gradient(red, yellow 10%, green 15%);
}

 

完整实例【亲自试一试】:

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
  height: 150px;
  width: 200px;
  background-color: red; /* 针对不支持渐变的浏览器 */
  background-image: repeating-radial-gradient(red, yellow 10%, green 15%);
}
</style>
</head>
<body>
<h1>重复的径向渐变</h1>
<div id="grad1"></div>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

CSS 渐变属性

下表列出了 CSS 渐变属性:

属性 描述
background-image 为一个元素设置一幅或多幅背景图像。

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024