CSS3---11.渐变-线性渐变-径向渐变

渐变是CSS3当中比较丰富多彩的一个特性,通过渐变我们可以实现许多炫丽的效果,有效的减少图片的使用数量,并且具有很强的适应性和可扩展性。可分为线性渐变、径向渐变
1.linear-gradient线性渐变指沿着某条直线朝一个方向产生渐变效果
a)语法:
linear-gradient( [<point> || <angle>,]? <stop>, <stop> [, <stop>]* )
b)参数说明:
    第一个参数表示线性渐变的方向,
    1.to left:设置渐变为从右到左。相当于: 270deg;
    2.to right:设置渐变从左到右。相当于: 90deg;   
    3.to top:设置渐变从下到上。相当于: 0deg;
    4.to bottom:设置渐变从上到下。相当于: 180deg。这是默认值,等同于留空不写。也可以直接指定度数,如45deg
    第二个参数是起点颜色,可以指定颜色的位置
    第三个参数是终点颜色,你还可以在后面添加更多的参数,表示多种颜色的渐变
c)示例:
div{
    width: 400px;
    height: 400px;
    margin: 100px auto;
    background: linear-gradient(0deg,red,orange,yellow,green,  #00ffff,blue,purple);
}
<style>
div{
     margin: 10px;
     width: 300px;
     height: 300px;
     float: left;
}
.div1{
   
    /*添加渐变:渐变不是一个单一钩,它产生的是图像,所以需要使用bacund*/
    /*linear-gradient(方向,开始颜色 位置,颜色2 位置,颜色3 位置.*/
    /*方向:
    to top:0deg
    to right:90deg
    to bottom:180deg --默认值
    to left:270deg*/
    background: linear-gradient(to right,red,blue);
      }
.div2{
      background: linear-gradient(to right,red 0%,red 50%,blue 50%, 100%);
}
</style>
<body>
<div class="div1"></div>
<div class="div2"></div>
</body>

2.radial-gradient径向渐变指从一个中心点开始沿着四周产生渐变效果
a)语法:
<radial-gradient> = radial-gradient([ [ <shape> || <size> ] [ at <position> ]? , | at <position>, ]?<color-stop>[ , <color-stop> ]+)
b)取值:
i.<position> 确定圆心的位置。如果提供2个参数,第一个表示横坐标,第二个表示纵坐标;如果只提供一个,第二值默认为50%,即center
ii.shape:渐变的形状,ellipse表示椭圆形,circle表示圆形。默认为ellipse,如果元素形状为正方形的元素,则ellipse和circle显示一样
iii.size:渐变的大小,即渐变到哪里停止,它有四个值。 closest-side:最近边; farthest-side:最远边; closest-corner:最近角; farthest-corner:最远角。默认是最远的角farthest-corner
iv.<color>:指定颜色。Rgba  hsla
<style>
    div{
        width: 300px;
        float: left;
        margin: 10px;
        background: radial-gradient(red,red 50%,blue 50%,blue);
    }
    .div1{
        height: 200px;
    }
    .div2{
        height: 300px;
    }
</style>
<body>
<div class="div1">矩形</div>
<div class="div2">正方形</div>
</body>

<style>
.div3{
        height: 300px;
        background: radial-gradient(circle,red,blue);
    }
</style>
<div class="div3">从中间光晕</div>

<style>
.div4{
        height: 200px;
        background: radial-gradient(circle farthest-side at 50px 50px,red,blue);
    }
</style>
<div class="div4">定圆心,晕到最远边</div>

<style>
.div5{
        height: 200px;
        background: radial-gradient(circle farthest-corner at 50px 50px,red,blue);
    }
</style>
<div class="div5">定圆心,晕到最角</div>

<style>
.div6{
        height: 200px;
        background: radial-gradient(at right bottom,red,blue);
    }
</style>
<div class="div6">定圆心右下角</div>

posted @ 2019-03-14 09:47  Tobenew  阅读(330)  评论(0编辑  收藏  举报