CSS3漸變(Gradients)能夠讓你在兩個或多個指定顏色之間顯示平穩的過分,包括透明度。html
之前,你必須使用圖像來實現這些效果。可是,經過Css3漸變(Gradients),你能夠減小下載的事件和寬帶的使用。此外,漸變效果元素在放大時看起來效果更好,由於漸變(gradient)是由瀏覽器生成的。web
CSS3定義了兩種類型的漸變(gradients):瀏覽器
1.線性漸變(Linear Gradients)-向下、向上、向左、向右、對角方向:(to bottom、to top、to right、to left、to bottom right,等等)函數
2.徑向漸變(Radial Gradients)-由他們的中心定義post
瀏覽器支持:spa
表中的數字指定了徹底支持該屬性的第一個瀏覽器版本。code
後邊跟 -webkit-、-moz- 或 -o- 的數字指定了需加上前綴才能支持屬性的第一個版本。htm
屬性 | IE | FF | Safari | Opera | |
---|---|---|---|---|---|
linear-gradient | 10.0 | 26.0 10.0 -webkit- |
16.0 3.6 -moz- |
6.1 5.1 -webkit- |
12.1 11.1 -o- |
radial-gradient | 10.0 | 26.0 10.0 -webkit- |
16.0 3.6 -moz- |
6.1 5.1 -webkit- |
12.1 11.6 -o- |
repeating-linear-gradient | 10.0 | 26.0 10.0 -webkit- |
16.0 3.6 -moz- |
6.1 5.1 -webkit- |
12.1 11.1 -o- |
repeating-radial-gradient | 10.0 | 26.0 10.0 -webkit- |
16.0 3.6 -moz- |
6.1 5.1 -webkit- |
12.1 11.6 -o- |
CSS3 線性漸變(linear-gradient/repeating-linear-gradient)blog
建立一個線性漸變,至少定義兩種顏色結點,用於呈現平穩過分的顏色。同時,你也能夠設置一個起點和一個方向(或一個角度)。事件
指定方向語法:
background: linear-gradient(direction, color-stop1, color-stop2, ...);
1.線性漸變-默認狀況下,從上到下
.divOne { width: 100px; height: 100px; background: linear-gradient(red, blue); }
<!--線性漸變-默認狀況下,從上到下 1.支持IE10及以上瀏覽器 --> <div class="divOne"></div>
2.線性漸變-從左到右
.divOne { width: 100px; height: 100px; background: linear-gradient(to right, red, blue); }
3.線性漸變-對角
.divOne { width: 100px; height: 100px; background: linear-gradient(to bottom right, red, blue); }
指定角度語法:
若是你想要在漸變方向上作更多的控制,你能夠定義一個角度,而不用使用預約義的方向。
background: linear-gradient(angle, color-stop1, color-stop2);
角度是指水平線和漸變線之間的角度,逆時針方向計算。換句話說,0deg 將建立一個從下到上的漸變,90deg 將建立一個從左到右的漸變。
4.線性漸變-指定角度:
.divOne { background: linear-gradient(30deg, red, blue); } .divTwo { background: linear-gradient(0deg, red, blue); } .divThree{ background: linear-gradient(90deg, red, blue); }
5.線性漸變-使用多個顏色點:
.divOne { background: linear-gradient( red, green, blue); } .divTwo { background: linear-gradient( red 10%, green 85%, blue 90%); } .divThree { background: linear-gradient(red, orange, yellow, green, blue, indigo, violet); }
6.線性漸變-使用透明度(Transparent),透明度的漸變
CSS3 漸變也支持透明度(transparency),可用於建立減弱變淡的效果。
爲了添加透明度,咱們使用 rgba() 函數來定義顏色結點。rgba() 函數中的最後一個參數能夠是從 0 到 1 的值,它定義了顏色的透明度:0 表示徹底透明,1 表示徹底不透明。
.divOne { background: linear-gradient(to right, rgba(255, 0, 0, 0), rgba(255, 0, 0, 1)); } .divTwo { background: linear-gradient(to bottom, rgba(255, 255, 0, 0.3), rgba(0, 255, 255, 1)); }
7.重複的線性漸變-repeating-linear-gradient()
.divOne { background: repeating-linear-gradient(red, yellow 10%, green 20%); } .divTwo { background: repeating-linear-gradient(to right, rgba(255, 255, 0, 0.3) 10%, rgba(0, 255, 255, 1) 20%); }
更多: