linear-gradient()

  • 版本:CSS3
wechat
WEB前端开发官方公众号
10年服务3000万前端开发工程师

微信号:webfedev

微信扫一扫关注,每天分享前端干货

语法:

<linear-gradient> = linear-gradient([ [ <angle> | to <side-or-corner> ] ,]? <color-stop>[, <color-stop>]+)

<side-or-corner> = [left | right] || [top | bottom]

<color-stop> = <color> [ <length> | <percentage> ]?

取值:

下述值用来表示渐变的方向,可以使用角度或者关键字来设置:

<angle>
用角度值指定渐变的方向(或角度)。
to left:
设置渐变为从右到左。相当于: 270deg
to right:
设置渐变从左到右。相当于: 90deg
to top:
设置渐变从下到上。相当于: 0deg
to bottom:
设置渐变从上到下。相当于: 180deg。这是默认值,等同于留空不写。

<color-stop> 用于指定渐变的起止颜色:

<color>
指定颜色。
<length>
用长度值指定起止色位置。不允许负值
<percentage>
用百分比指定起止色位置。

说明:

用线性渐变创建图像。
  • 如果想创建以对角线方式渐变的图像,可以使用 to top left 这样的多关键字方式来实现。
  • 用默认的渐变方向绘制一个最简单的线性渐变

    示例代码:


    (图一)

    linear-gradient(#fff, #333); linear-gradient(to bottom, #fff, #333); linear-gradient(to top, #333, #fff); linear-gradient(180deg, #fff, #333); linear-gradient(to bottom, #fff 0%, #333 100%);

    以上几句代码都可以实现如(图一)的渐变效果

兼容性:

  • 浅绿 = 支持
  • 红色 = 不支持
  • 粉色 = 部分支持
IE Firefox Chrome Safari Opera iOS Safari Android Browser Android Chrome
6.0-9.0 #2 2.0-3.5 4.0-9.0
-webkit- #1
3.1-3.2 15.0+ 3.2-4.3
-webkit- #1
2.1-3.0
-webkit- #1
10.0-25.0
-webkit- #1
10.0+ 3.6-15.0
-moz-
10.0-25.0
-webkit-
4.0-5.0
-webkit- #1
5.0-6.1 4.0-4.3
-webkit-
26.0+
16.0+ 26.0+ 5.1-6.0
-webkit-
7.0+ 4.4+
6.1+
  1. 使用过时的语法:-webkit-gradient(linear,…)
  2. IE6.0-9.0使用私有滤镜来实现该效果: progid:DXImageTransform.Microsoft.Gradient()

示例: