使用多个颜色结点
下面的示例演示了如何创建一个带有彩虹颜色和文本的线性渐变:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>文献测试专用</title>
<style>
#grad1 {
height: 55px;
background: -webkit-linear-gradient(left, red, orange, yellow, green, blue, indigo, violet); /* Safari 5.1 - 6.0 */
background: -o-linear-gradient(left, red, orange, yellow, green, blue, indigo, violet); /* Opera 11.1 - 12.0 */
background: -moz-linear-gradient(left, red, orange, yellow, green, blue, indigo, violet); /* Firefox 3.6 - 15 */
background: linear-gradient(to right, red, orange, yellow, green, blue, indigo, violet); /* 标准的语法(必须放在最后) */
}
</style>
</head>
<body>
<div id="grad1"style="text-align:center;margin:auto;color:#888888;font-size:40px;font-weight:bold">
渐变背景</div>
</body>
</html>
运行效果如下:
使用透明度(Transparency)
CSS3 渐变也支持透明度(transparency),可用于创建减弱变淡的效果。
为了添加透明度,我们使用 rgba() 函数来定义颜色结点。rgba() 函数中的最后一个参数可以是从 0 到 1 的值,它定义了颜色的透明度:0 表示完全透明,1 表示完全不透明。
下面的实例演示了从左边开始的线性渐变。起点是完全透明,慢慢过渡到完全不透明的红色:
示例
从左到右的线性渐变,带有透明度:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>文献测试专用</title>
<style>
#grad1 {
height: 200px;
background: -webkit-linear-gradient(left, rgba(255,0,0,0), rgba(255,0,0,1)); /* Safari 5.1 - 6.0 */
background: -o-linear-gradient(right, rgba(255,0,0,0), rgba(255,0,0,1)); /* Opera 11.1 - 12.0 */
background: -moz-linear-gradient(right, rgba(255,0,0,0), rgba(255,0,0,1)); /* Firefox 3.6 - 15 */
background: linear-gradient(to right, rgba(255,0,0,0), rgba(255,0,0,1)); /* 标准的语法(必须放在最后) */
}
</style>
</head>
<body>
<h3>线性渐变 - 透明度</h3>
<p>为了添加透明度,我们使用 rgba() 函数来定义颜色结点。rgba() 函数中的最后一个参数可以是从 0 到 1 的值,它定义了颜色的透明度:0 表示完全透明,1 表示完全不透明。</p>
<div id="grad1"></div>
</body>
</html>
运行效果如下:
重复的线性渐变
repeating-linear-gradient() 函数用于重复线性渐变:
示例
一个重复的线性渐变:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>文献测试专用</title>
<style>
#grad1 {
height: 200px;
background: -webkit-repeating-linear-gradient(azure, violet 10%, orange 20%); /* Safari 5.1 - 6.0 */
background: -o-repeating-linear-gradient(azure, violet 10%, orange 20%); /* Opera 11.1 - 12.0 */
background: -moz-repeating-linear-gradient(azure, violet 10%, orange 20%); /* Firefox 3.6 - 15 */
background: repeating-linear-gradient(azure, violet 10%, orange 20%); /* 标准的语法(必须放在最后) */
}
</style>
</head>
<body>
<h3>重复的线性渐变</h3>
<div id="grad1"></div>
</body>
</html>
运行效果如下: