# 概念
CSS linear-gradient() 函式建立一個表示顏色線性漸變的 <image> 。
簡單的說,元素只要用了linear-gradient,它等同於一張圖片。
即:
background:linear-gradient(...params) ~= background:url(...image)
所以它只能用在圖片可以用的地方。如:background、background-image。
不要把它當作顏色用在color等樣式中。
# 使用方式
簡單起見,只講一種最通用的使用方式。
background: linear-gradient(angle[角度], color-stop[起始顏色],color-stop[終點顏色]);
複製程式碼
# 原理
angle描述漸變的方向,單位是deg,它的有效角度值是0-360deg。預設180deg。
幾個常用漸變角度分別為:
- 從下到上:0deg
- 從上到下:180deg
- 從左到右:90deg
- 從右到左:270deg
如下圖所示:
![簡解Css3 - linear-gradient](https://i.iter01.com/images/fb9e64b140fb1e012804ca3d195815e6785458200dc21871797c468f247a02a7.png)
angle的值其實就是以向頂部中央方向為起點順時針旋轉的角度。
0deg時可以看作是上圖穿過矩形中心的黑色虛線。
這裡我們要理解下漸變線的概念:
漸變線由包含漸變圖形的容器的中心點和一個角度來定義的。漸變線上的顏色值是由不同的點來定義,包括起始點,終點,以及兩者之間的可選的中間點(中間點可以有多個)。
圖中示例了一個45deg經過矩形中心的漸變線,它的起點就是垂直於漸變線的紅點,終點是起點對應的反射點,也就是圖上的綠點。
這兩點的顏色分別對應著css程式碼中定義的始末色值,其間則是沿著漸變線不斷變化的色值。
不需多言,盡在圖中。
# 示例
1 0deg 藍色起點 紅色終點
background: linear-gradient(0deg, blue, red);
複製程式碼
![簡解Css3 - linear-gradient](https://i.iter01.com/images/e8427b96fb41699dc1d607830a17f486a4462e0745a03b4af13f71883bec604f.jpg)
2 45deg 藍色起點 紅色終點
background: linear-gradient(45deg, blue, red);
複製程式碼
![簡解Css3 - linear-gradient](https://i.iter01.com/images/154db100c85ff6e58150c7e1d42a7cb0797a6a22290303d9b06129056c73f197.jpg)