有些旧版本的WebKit浏览器只支持线性渐变
使用到的linear-gradient()函数,可以假设一条线,从元素顶部到底部绘制了一个渐变背景,这条线的角度由这个函数的前面关键字(to,bottom),位置由0%处的颜色是浅灰色,而位置100%处也就是元素顶部的颜色是深蓝色。
渐变线的方向可以使用关键字to,再加上一个表示边的(top、right、bottom、left)或者使用角来表示(top left、top right、bottom left、bottom right)的关键字来指定。
此外还可以使用deg单位指定渐变线的角度,0deg表示垂直向上,增大角度值就意味着沿顺时针方向旋转,直到360deg,度数表示绘制渐变的方向,因此起点就在我们指定的相反方向。
当设置为45deg的渐变:
线性渐变的默认方向是自上而下的,而且0%和100%分别表示第一个和最后一个色标的位置,因此,可以简写为:
新增色标若未指定位置,则在0%~100%范围内取均值,比如:有3个未指定位置的色标,那么它们的位置分布为0%、50%、100%
除了百分比外,还可以使用绝对值指定色标的位置,比如:
这种写法渐变是顶部从浅蓝色开始渐变,往下走100px之后过渡到深蓝色,然后一直到底部都是深蓝色。
CSS linear-gradient() 函数用于创建一个表示两种或多种颜色线性渐变的图片。其结果属于<gradient>数据类型,是一种特别的<image>数据类型。linear-gradient( [ <angle>| to <side-or-corner>,]? <color-stop-list>)
\---------------------------------/ \----------------------------/
Definition of the gradient line List of color stops
where <side-or-corner>= [ left | right ] || [ top | bottom ]
and <color-stop-list>= [ <linear-color-stop>[, <color-hint>? ]? ]#, <linear-color-stop>
and <linear-color-stop>= <color>[ <color-stop-length>]?
and <color-stop-length>= [ <percentage>| <length>]{1,2}
and <color-hint>= [ <percentage>
栗子:
div {
background: linear-gradient(to right, red, orange, yellow, green, blue, indigo, violet)
}