CSS3顏色漸變模式總結


 

  1.線性漸變:linear-gradient

  語法:= linear-gradient([ [ | to [, ]+)

  = [left | right] || [top | bottom]

  = [ |]?

  下述值用來表示漸變的方向,可以使用角度或者關鍵字來設置:

  :

  用角度值指定漸變的方向(或角度)。

  to left:

  設置漸變為從右到左。相當於: 270deg

  to right:

  設置漸變從左到右。相當於: 90deg

  to top:

  設置漸變從下到上。相當於: 0deg

  to bottom:

  設置漸變從上到下。相當於: 180deg。這是默認值,等同於留空不寫。

  用於指定漸變的起止顏色:

  :

  指定顏色。

  :

  用長度值指定起止色位置。不允許負值

  :

  用百分比指定起止色位置。

  示例:

  

\

 

  p {

  width: 200px;

  height: 100px;

  margin: 10px 5px;

  border: 1px solid #ddd000;

  }

  #LinearStartToEnd {

  float:left;

  background: linear-gradient(#ff0000, #00ff00);

  }

  #LinearPercentage {

  float:left;

  background: linear-gradient(#0000ff, #ff0000 52%, #00ff00);

  }

  #LinearAnglePercentage {

  float:left;

  background: linear-gradient(90deg, #ff0000 20%, #00ff00 50%, #000000 80%);

  }

  #LinearAngle {

  float:left;

  background: linear-gradient(30deg, #ffff00 30%, #ff0000, #00ff00);

  }

  #LinearTopRight {

  float:left;

  background: linear-gradient(to right top, #00ff00, #ff0000 50%, #0000ff);

  }

  2.徑向漸變:radial-gradient

  語法:

  = [① |① | left | center① | right ]? [② |② | top | center② | bottom ]?

  = circle | ellipse

  = |[||]

  = closest-side | closest-corner | farthest-side | farthest-corner

  =

  = [|]{2}

  =|

  = radial-gradient([ [ || ] [ at ]? , | at, ]?[[ ,]]+)

  確定圓心的位置。如果提供2個參數,第一個表示橫坐標,第二個表示縱坐標;如果只提供一個,第二值默認為50%,即center

  ①:用長度值指定徑向漸變圓心的橫坐標值。可以為負值。

  ①:用百分比指定徑向漸變圓心的橫坐標值。可以為負值。

  ②:用長度值指定徑向漸變圓心的縱坐標值。可以為負值。

  ②:用百分比指定徑向漸變圓心的縱坐標值。可以為負值。

  center①:設置中間為徑向漸變圓心的橫坐標值。

  center②:設置中間為徑向漸變圓心的縱坐標值。

  left:設置左邊為徑向漸變圓心的橫坐標值。

  right:設置右邊為徑向漸變圓心的橫坐標值。

  top:設置頂部為徑向漸變圓心的縱坐標值。

  bottom:設置底部為徑向漸變圓心的縱坐標值。

  確定圓的類型

  circle:指定圓形的徑向漸變

  ellipse:指定橢圓形的徑向漸變。

  circle | ellipse 都接受該值作為 size。

  closest-side:指定徑向漸變的半徑長度為從圓心到離圓心最近的邊。

  closest-corner:指定徑向漸變的半徑長度為從圓心到離圓心最近的角。

  farthest-side:指定徑向漸變的半徑長度為從圓心到離圓心最遠的邊。

  farthest-corner:指定徑向漸變的半徑長度為從圓心到離圓心最遠的角。

  circle 接受該值作為 size。

  :用長度值指定正圓徑向漸變的半徑長度。不允許負值。

  ellipse 接受該值作為 size。

  :用長度值指定橢圓徑向漸變的橫向或縱向半徑長度。不允許負值。

  :用百分比指定橢圓徑向漸變的橫向或縱向半徑長度。不允許負值。

  示例:

  

\

 

  #RadialCenterCircle {

  float:left;

  background: radial-gradient(circle at center, #ff0000, #ffff00, #00ffff);

  }

  #RadialClosestSide {

  float:left;

  background: radial-gradient(circle closest-side, #ff0000, #00ff00, #ffff00);

  }

  #RadialFarthestSide {

  float:left;

  background: radial-gradient(farthest-side, #ff0000 20%, #ffff00 60%, #00ff00 80%);

  }

  #RadialRightTop {

  float:left;

  background: radial-gradient(at right top, #ff0000, #ffff00, #00ff00);

  }

  #RadialRadiusCenter {

  float:left;

  background: radial-gradient(farthest-side at top right, #ff0000, #ffff00, #01fefe);

  }

  #RadialGroup {

  float:left;

  background:

  radial-gradient(farthest-side at top right, #ff0000, #ffff00, #009f00, transparent),

  radial-gradient(60px at top left, #ff0000, #ffff00, #00ff0e);

  }

  3.重復的線性漸變:repeating-linear-gradient

  語法和參數類似線性漸變,這里不在贅述。詳情請參考CSS手冊。

  示例:

  

\

 

  #RepeatingLinearPercentage{

  float:left;

  background: repeating-linear-gradient(#ff0000, #00ff00 10%, #000000 15%);

  }

  #RepeatingLinearRight {

  float:left;

  background: repeating-linear-gradient(to right, #ff0000, #00ff00 10%, #000000 15%);

  }

  #RepeatingLinearAngle {

  float:left;

  background: repeating-linear-gradient(45deg, #ff0000, #00ff00 10%, #0000ff 15%);

  }

  #RepeatingLinearBottomLeft {

  float:left;

  background: repeating-linear-gradient(to bottom left, #00ffff, #ff0000 10%, #00ff00 15%);

  }

  3.重復的徑向漸變:repeating-radial-gradient

  語法和參數類似徑向漸變,這里不在贅述。詳情請參考CSS手冊。

  示例:

  

\

 

  #RepeatingRadialCircle {

  float:left;

  background: repeating-radial-gradient(circle, #ff0000 0, #00ff00 10%, #0000ff 15%);

  }

  #RepeatingRadialTopLeft {

  float:left;

  background: repeating-radial-gradient(at top left, #ff0000, #00ff00 10%, #0de0f0 15%, #ffff00 20%, #000000 25%);

  }

  #RepeatingRadialClosestCorner {

  float:left;

  background: repeating-radial-gradient(circle closest-corner at 20px 50px, #00ff00, #ff0000 10%, #00ffff 20%, #ffff00 30%, #ff00ff 40%);

  }

  完整的例子:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM