css渐变

简介: css渐变

线性渐变

liner-gradient属性值用来设置线性渐变,第一个参数值是方向,默认是从上往下,往后就是渐变颜色的种类。

background-image:liner-gradient(方向,颜色1,颜色2...)
.box {
        display: flex;
        width: 400px;
        height: 400px;
        background: linear-gradient(orange,red);//backgournd可以设置所有背景属性
 }

bd9350bb4b39422c81319c14ee207030.png

方向设置:

  • to+方位。首先我们可以使用to+方位改变位置,比如从下往上渐变,在颜色前面加上to top。我们还可以设置两个方位,这样就变成了对角线。
background: linear-gradient(to top right,orange,red);

a9be0453e8804edd8ae40137d98e6532.png

  • 角度表示。默认是从上往下,所以我们把中间分界线当成0deg,逆时针旋转90deg就是向右,这样子我们就可以用角度代表着方向,比如上面对角线我们可以写成
background: linear-gradient(45deg,orange,red);

颜色设置:

颜色设置就是通用的三种方式:

  • 英文单词。
  • 16进制。
  • rgba。如果我们想要加透明度,那么就用rgba设置,最后一个代表的就是透明度。

径向渐变:

radial-gradient用来设置径向渐变,不同线性方向,径向需要设置形状,大小。

background-image:radial-gradient(形状,大小,颜色1,颜色2...)

默认从中心均匀地渐变。

3069b5abe589463abdc1ff35fc144877.png

形状设置

  • 椭圆(默认值)。我们可以用ellipse将形状设置为椭圆。
  • 圆形。用circle可以将形状变成圆。将上面的形状设置为圆如下:
background: radial-gradient(circle, orange, pink);

ca039a38ef5b4953a38f28d80af61b24.png

大小设置

  • closest-side:用来设置从中心到最近的边的渐变大小;
  • closest-corner:用来设置从中心到最近的角的渐变大小;
  • farthest-side:用来设置从中心到最远的边的渐变大小;
  • farthest-corner:用来设置从中心到最远的角的渐变大小; 具体数值用百分比设置就可以。
background: radial-gradient(closest-side at 10% 10%, orange, pink);

b2d3ee772a924c398fe0eeda6485b4a6.png

重复渐变:

如果我们在线性渐变/径向渐变前面加上repeating就是重复渐变,重复渐变需要我们给颜色设置大小,具体可以用百分比或px来表示

background: repeating-linear-gradient(45deg,orange, red 100px);

锥形渐变:

渐变的方式可以指定百分比等或是角度deg,默认从中心往上的线开始,顺时针开始旋转渐变

(1)指定渐变开始点

background:conic-gradient(white 45deg, black 90deg,red 180deg);

    45deg以前的区间为白色

    90deg的地方不渐变,其他区间会和前后的元素产生渐变

    180deg的地方不渐变,之前的区间会和前面的元素产生渐变,之后不渐变

(2)只需要间断颜色,不需要渐变(设置起始点都为一个颜色,下一个颜色的起点为上一个的终点)

background:conic-gradient(
        #500 0, #500 45deg,
        #f00 45deg, #f00 90deg,
        #f50 90deg, #f50 135deg,
        #ff0 135deg,#ff0 180deg,
        #0c0 180deg, #0c0 225deg,
        #09d 225deg, #09d 270deg,
        #00b 270deg, #00b 315deg,
        #909 315deg, #909 360deg
    );

(3)重复锥形渐变

background:repeating-conic-gradient(颜色 渐变开始点,颜色2 渐变开始点2 ,...);

   会根据0到最后一个渐变开始点的位置为一个整体,进行顺时针的重复填充

d267eaeac19e4c388a4db02250f6bd75.png

background:conic-gradient(#f00, #f50, #ff0, #0c0, #09d, #03a, #909, #f00);
background:conic-gradient(
    #500 0, #500 45deg,
    #f00 45deg, #f00 90deg,
    #f50 90deg, #f50 135deg,
    #ff0 135deg,#ff0 180deg,
    #0c0 180deg, #0c0 225deg,
    #09d 225deg, #09d 270deg,
    #00b 270deg, #00b 315deg,
    #909 315deg, #909 360deg
);

966548b54ebd4e659e9ce075404d4712.png

div{
    width:200px;
    height:200px;
    border-radius:50%;
    background:conic-gradient(
        #fc0 0, 
        #fc0 45deg,
        #59f 45deg
    );
}

82660fe51b17421b9a1f28867eaa1a73.png

background:repeating-conic-gradient(
      #f00 0, 
      #f00 15deg,
      #fa0 15deg,
      #fa0 30deg
  );
相关文章
|
13天前
|
前端开发 开发者
CSS3的常见边框汇总
CSS3的常见边框汇总
13 2
|
4月前
|
前端开发
css渐变实现杂色
css渐变实现杂色
23 1
|
5月前
|
前端开发
CSS实现中间粗两头细的线条
CSS实现中间粗两头细的线条
42 1
|
5月前
|
前端开发
CSS 阴影效果
CSS 阴影效果
|
6月前
css3阴影效果
css3阴影效果
42 0
|
12月前
CSS3阴影
CSS3阴影
45 0
|
前端开发
CSS 边框也能动画?小施魔法~
为边框加上动画效果,往往会让交互显得更加友好。
|
前端开发
CSS阴影
CSS阴影
70 0
CSS阴影
|
前端开发 容器