css linear-gradient

今天要介绍linear-gradient,线性渐层
创造出一个方块并在里面示范渐层,先看看效果如何

        .box1{
            background:linear-gradient(pink, yellow);
        }

https://ithelp.ithome.com.tw/upload/images/20210924/20140086t5QsgHQSTk.jpg
这是最简洁的写法,让方块从上到下进行粉色到黄色的渐层
其他可以改变的属性有方向角度颜色比例,若没有特别设定就会如同上图的预设效果

方向

可以设定上、下、左、右、右上、右下、左上、左下八个方向,颜色会从反方向往设定方向渐层,语法示范如下

            background:linear-gradient(to top left,pink, yellow);

从右下角的粉红色往左上角的黄色渐层
https://ithelp.ithome.com.tw/upload/images/20210924/20140086lIpPEp8zrg.jpg

角度

可以直接指定往某个角度渐层,从12点钟方向开始向顺时钟方向加上指定的角度

        .box1{
            background:linear-gradient(0deg,pink, yellow);
        }
        .box2{
            background:linear-gradient(45deg,pink, yellow);
        }
        .box3{
            background:linear-gradient(90deg,pink, yellow);
        }
        .box4{
            background:linear-gradient(240deg,pink, yellow);
        }

分别为0度、45度、90度、240度
https://ithelp.ithome.com.tw/upload/images/20210924/20140086dL86tkYOAl.jpg

颜色比例

box1为预设状态

        .box1{
            background:linear-gradient(pink 0%, yellow 100%);
        }
        .box2{
            background:linear-gradient(pink 20%, yellow 100%);
        }
        .box3{
            background:linear-gradient(pink 50%, yellow 100%);
        }
        .box4{
            background:linear-gradient(pink 80%, yellow 100%);
        }

https://ithelp.ithome.com.tw/upload/images/20210924/20140086f4g0ICTfgd.jpg

渐层颜色变化的规则如下
假设为background:linear-gradient(pink 20%, yellow 80%);
先取前色数值20%,从顶端往下填满为粉色(蓝色实线框)
https://ithelp.ithome.com.tw/upload/images/20210924/20140086GphR5keqdz.jpg
接下来取後者数值80%,从顶端往下,在超出纯色的地方进行渐层的过度(黑色虚线框)
https://ithelp.ithome.com.tw/upload/images/20210924/20140086krPzLsSpY4.jpg
最後用後者黄色填满剩下区域
https://ithelp.ithome.com.tw/upload/images/20210924/20140086iK7qLNeQVg.jpg

以下实验了一些组合

        .box1{
            background:linear-gradient(pink 0%, yellow 100%);
        }
        .box2{
            background:linear-gradient(pink 0%, yellow 50%);
        }
        .box3{
            background:linear-gradient(pink 25%, yellow 75%);
        }
        .box4{
            background:linear-gradient(pink 0%, yellow 0%);
        }
        .box5{
            background:linear-gradient(pink 20%, yellow 20%);
        }
        .box6{
            background:linear-gradient(pink 50%, yellow 50%);
        }
        .box7{
            background:linear-gradient(pink 80%, yellow 20%);
        }
        .box8{
            background:linear-gradient(pink 100%, yellow 100%);
        }

https://ithelp.ithome.com.tw/upload/images/20210924/20140086reoRbN70KW.jpg
BOX1 0%粉色区,100%过度区,为预设效果
BOX2 0%~50%为过度区,下半部分为纯黄色
BOX3 只有中间50%为过度区,上下25%皆为纯色
BOX4 粉色区为0%,过度区为0%,剩余用黄色填满
BOX5 20%粉色区域,20%过度区域,没有超过粉色区域,剩余用黄色填满
BOX6 如同前者,前後皆为50%,因此没有过度区
BOX7 80%粉色区域,20%过度区域,没有超过粉色区域,剩余用黄色填满
BOX8 100%粉色区域

许多人设定时只觉得两数值相加必须为100%,但是搞懂了数值设定的原理,配合角度设定,就能做出你理想的渐层


<<:  [第九只羊] 迷雾森林舞会II 房间座位设定

>>:  Day 9 来了fireEvent

【C language part 4】阵列与字串&函式

阵列 阵列是一群具有相同名称或资料型态的变数集合。 由於整个阵列中的变数均具有相同的名称,因此若要存...

用React刻自己的投资Dashboard Day13 - 制作分页(Pagination)功能

tags: 2021铁人赛 React 一般的内容网站通常都会有将内容分页或是动态读取的功能,例如像...

Day24 React专案资料夹分类方式

React本身并没有特别限定专案资料夹的设定方式,但这边建议可以朝以下两种方式着手: 依照功能或所属...

Day 29: 实作 Vue 的 Server Side Render

这篇的程序码在 https://github.com/DanSnow/ironman-2020/t...

[2021铁人赛 Day13] General Skills 10

引言 今天会讲两题,因为第二题是我们讲过的,就当作复习吧! 第一题继续延伸进位制,第二题是已经出现...