个性化阅读
专注于IT技术分析

CSS渐变gradient

本文概述

CSS渐变用于显示两种或多种指定颜色的平滑过渡。

为什么使用CSS渐变

这些是使用CSS渐变的以下原因。

  • 你不必使用图像来显示过渡效果。
  • 下载时间和带宽使用量也可以减少。
  • 缩放时, 它可以为元素提供更好的外观, 因为渐变是由浏览器生成的。

CSS3中有两种类型的渐变。

  1. 线性渐变
  2. 径向渐变

1)CSS线性渐变

CSS3线性渐变向上/向下/向左/向右倾斜。要创建CSS3线性渐变, 必须定义两个或多个色标。色标是用于创建平滑过渡的颜色。起点和方向也可以与渐变效果一起添加。

background: linear-gradient (direction, color-stop1, color-stop2.....);

(i)CSS线性渐变:(从上到下)

“从上到下的线性渐变”是默认的线性渐变。让我们以从顶部开始的线性渐变为例。它从红色开始, 然后过渡到绿色。

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
    height: 100px;
    background: -webkit-linear-gradient(red, green); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(red, green); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(red, green); /* For Firefox 3.6 to 15 */
    background: linear-gradient(red, green); /* Standard syntax (must be last) */
}
</style>
</head>
<body>
<h3>Linear Gradient - Top to Bottom</h3>
<p>This linear gradient starts at the top. It starts red, transitioning to green:</p>
<div id="grad1"></div>
</body>
</html>

输出:

线性渐变-从上到下

此线性渐变从顶部开始。它从红色开始, 过渡到绿色:


(ii)CSS线性渐变:(从左到右)

以下示例显示了从左到右的线性渐变。它从左侧开始为红色, 然后过渡为绿色。

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
    height: 100px;
    background: -webkit-linear-gradient(left, red, green); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(right, red, green); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(right, red, green); /* For Firefox 3.6 to 15 */
    background: linear-gradient(to right, red , green); /* Standard syntax (must be last) */
}
</style>
</head>
<body>
<h3>Linear Gradient - Left to Right</h3>
<p>This linear gradient starts at the left. It starts red, transitioning to green:</p>
<div id="grad1"></div>
</body>
</html>

输出:

线性渐变-从左到右

该线性梯度从左侧开始。它从红色开始, 过渡到绿色:


(iii)CSS线性渐变:(对角线)

如果同时指定水平和垂直起始位置, 则可以使线性渐变对角线。

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
    height: 100px;
    background: -webkit-linear-gradient(left top, red , green); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(bottom right, red, green); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(bottom right, red, green); /* For Firefox 3.6 to 15 */
    background: linear-gradient(to bottom right, red , green); /* Standard syntax (must be last) */
}
</style>
</head>
<body>
<h3>Linear Gradient - Diagonal</h3>
<p>This linear gradient starts at top left. It starts red, transitioning to green:</p>
<div id="grad1"></div>
</body>
</html>

输出:

线性渐变-对角线

该线性梯度从左上方开始。它从红色开始, 过渡到绿色:


2)CSS径向渐变

你必须至少定义两个色标才能创建径向渐变。它由其中心定义。

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

(i)CSS径向渐变:(均匀间隔的色标)

默认情况下, 均匀间隔的色标是径向渐变。默认情况下, 其形状为月食, 尺寸为最远, 位置为中心。

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
    height: 150px;
    width: 200px;
    background: -webkit-radial-gradient(blue, green, red); /* Safari 5.1 to 6.0 */
    background: -o-radial-gradient(blue, green, red); /* For Opera 11.6 to 12.0 */
    background: -moz-radial-gradient(blue, green, red); /* For Firefox 3.6 to 15 */
    background: radial-gradient(blue, green, red); /* Standard syntax (must be last) */
}
</style>
</head>
<body>
<h3>Radial Gradient - Evenly Spaced Color Stops</h3>
<div id="grad1"></div>
</body>
</html>

输出:

径向渐变-均匀分布的色标

(ii)径向渐变:(不同间距的色标)

<!DOCTYPE html>
<html>
<head>
<style>
#grad1 {
    height: 150px;
    width: 200px;
    background: -webkit-radial-gradient(blue 5%, green 15%, red 60%); /* Safari 5.1 to 6.0 */
    background: -o-radial-gradient(blue 5%, green 15%, red 60%); /* For Opera 11.6 to 12.0 */
    background: -moz-radial-gradient(blue 5%, green 15%, red 60%); /* For Firefox 3.6 to 15 */
    background: radial-gradient(blue 5%, green 15%, red 60%); /* Standard syntax (must be last) */
}
</style>
</head>
<body>
<h3>Radial Gradient - Differently Spaced Color Stops</h3>
<div id="grad1"></div>
</body>
</html>

输出:

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


支持的浏览器

该表指定了完全支持渐变属性的第一个浏览器版本。

属性 火狐 歌剧 苹果浏览器
linear-gradient 26.0 10.0-webkit- 16.0 3.6-moz- 10.0 12.1 11.1-o- 6.1 5.1-webkit-
radial-gradient 26.0 10.0-webkit- 16.0 3.6-moz- 10.0 12.1 11.1-o- 6.1 5.1-webkit-
repeating-linear-gradient 26.0 10.0-webkit- 16.0 3.6-moz- 10.0 12.1 11.1-o- 6.1 5.1-webkit-
repeating-radial-gradient 26.0 10.0-webkit- 16.0 3.6-moz- 10.0 12.1 11.1-o- 6.1 5.1-webkit-
赞(0) 打赏
未经允许不得转载:srcmini » CSS渐变gradient
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏