• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 渐变样式
2
3> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
4> 从API version 4开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
5
6组件普遍支持的在style或css中设置的 可以平稳过渡两个或多个指定的颜色。
7
8
9开发框架支持线性渐变 (linear-gradient)和重复线性渐变 (repeating-linear-gradient)两种渐变效果。
10
11
12## 线性渐变/重复线性渐变
13
14使用渐变样式,需要定义过渡方向和过渡颜色。
15
16
17### 过渡方向
18
19通过direction或者angle指定过渡方向。
20- direction:进行方向渐变。
21
22- angle:进行角度渐变。
23
24```
25background: linear-gradient(direction/angle, color, color, ...);
26background: repeating-linear-gradient(direction/angle, color, color, ...);
27```
28
29
30### 过渡颜色
31
32支持以下四种方式:\#ff0000、\#ffff0000、rgb(255, 0, 0)、rgba(255, 0, 0, 1),需要指定至少两种颜色。
33
34- 参数
35  | 名称 | 类型 | 默认值 | 必填 | 描述 |
36  | -------- | -------- | -------- | -------- | -------- |
37  | direction | to&nbsp;&lt;side-or-corner&gt;&nbsp;&nbsp;&lt;side-or-corner&gt;&nbsp;=&nbsp;[left&nbsp;\|&nbsp;right]&nbsp;\|\|&nbsp;[top&nbsp;\|&nbsp;bottom] | to&nbsp;bottom&nbsp;(由上到下渐变) | 否 | 指定过渡方向,如:to&nbsp;left&nbsp;(从右向左渐变)&nbsp;&nbsp;;或者<br/>to&nbsp;bottom&nbsp;right&nbsp;(从左上角到右下角)。 |
38  | angle | &lt;deg&gt; | 180deg | 否 | 指定过渡方向,以元素几何中心为坐标原点,水平方向为X轴,angle指定了渐变线与Y轴的夹角(顺时针方向)。 |
39  | color | &lt;color&gt;&nbsp;[&lt;length&gt;\|&lt;percentage&gt;] | - | 是 | 定义使用渐变样式区域内颜色的渐变效果。 |
40
41- 示例
42  1. 默认渐变方向为从上向下渐变
43  ```
44  #gradient {
45    height: 300px;
46    width: 600px;
47    /* 从顶部开始向底部由红色向绿色渐变 */
48    background: linear-gradient(red, #00ff00);
49  }
50  ```
51
52  ![zh-cn_image_0000001190934502](figures/zh-cn_image_0000001190934502.png)
53
54  2. 45度夹角渐变
55
56  ```
57    /* 45度夹角,从红色渐变到绿色 */
58    background: linear-gradient(45deg, rgb(255,0,0),rgb(0, 255, 0));
59  ```
60
61  ![zh-cn_image_0000001189854534](figures/zh-cn_image_0000001189854534.png)
62
63  3. 设置方向从左向右渐变
64
65  ```
66  /* 从左向右渐变,在距离左边90px和距离左边360px (600*0.6) 之间270px宽度形成渐变 */
67  background: linear-gradient(to right, rgb(255,0,0) 90px, rgb(0, 255, 0) 60%);
68  ```
69
70  ![zh-cn_image_0000001236694521](figures/zh-cn_image_0000001236694521.png)
71
72  4. 重复渐变
73
74  ```
75  /* 从左向右重复渐变,重复渐变区域30px(60-30)透明度0.5 */
76  background: repeating-linear-gradient(to right, rgba(255, 255, 0, 1) 30px,rgba(0, 0, 255, .5) 60px);
77  ```
78
79  ![zh-cn_image_0000001237134475](figures/zh-cn_image_0000001237134475.png)
80