CSS中的linear-gradient参数学习与使用示例教程

  发布时间:2024-01-05 10:58:02   作者:佚名   我要评论
inear-gradient函数用于创建一个表示两种或多种颜色线性渐变的图片,创建一个线性渐变,需要指定两种颜色,可以实现不同方向指定为一个角度的渐变效果,如果不指定方向,默认从上到下渐变,这篇文章主要介绍了CSS中的linear-gradient参数学习与使用,需要的朋友可以参考下

定义与方法

inear-gradient() 函数用于创建一个表示两种或多种颜色线性渐变的图片。创建一个线性渐变,需要指定两种颜色,还可以实现不同方向(指定为一个角度)的渐变效果,如果不指定方向,默认从上到下渐变。

参数

方法:linear-gradient(direction, color-stop1, color-stop2, ...)

direction:第一个参数表示渐变的方向。其可以是一个具体的角度值如45deg,或者是具体的方向值如to top,表示自下而上渐变;to bottom表示自上而下渐变【默认为to bottom】,还有 to right、to left等。

color-stop:渐变色的起止位置,通常是颜色加起始位置百分比。如 red 10%等。

角度参考值:【角度值仅代表宽高相等的正方形所对应的角度值】

direction【方向值】angle【角度值】
to right90deg
to bottom right135deg
to top right45deg
to left-90deg|270deg
to top left-45deg|315deg
to bottom left-135deg|225deg
to top0
to bottom180deg

线性渐变的组成

线性渐变由一个轴、渐变线和两个或多个色停点定义。轴上的每个点都是不同的颜色,为了创建平滑的渐变,linear-gradient()函数绘制了一系列垂直于渐变线的彩色线,每一条线的颜色都和它与渐变线相交的点的颜色相匹配。

渐变线由包含渐变图像的方框的中心和一个角度定义。渐变的颜色由两个或多个点决定:起点、终点和中间的可选色停点。

角度值

角度值:穿过中心点的垂直线与渐变线之间的夹角,如图中所示的E为30度角。根据角度可以确定渐变线的位置,如图中F’所在的直线为渐变线。

起止点:起点是渐变线上第一个颜色开始的位置。终点是最后一种颜色的终点。这两个点的每一个点都是由梯度线与在同一象限内从方框角出发的垂线的交点定义的。终点可以理解为起点的对称点。
如上图中从C点和A点向渐变线画出垂线,交点即为起止点。

上图中G为起点,H为终点。color stop为介于起点和终点之间,渐变线上的某些点。以linear-gradient(30deg, red 10% , yellow 30%, blue 70%)为例,在渐变线上就有3个点,从起点开始10%,30%,70%的位置。

渐变中心点:默认渐变中心点为两个色值点的中间值,可通过参数移动中间点。以上面linear-gradient(30deg, red 10% , yellow 30%, blue 70%)为例,在红色向黄色渐变时,默认的渐变中心点在两者正中的位置,也就是20%的位置。linear-gradient(30deg, red 10% , 15%, yellow 30%, blue 70%),通过在两者之间设定值,可以将中心点移动到15%的位置。

用法示例

通过在渐变线上添加更多的颜色停止点,您可以在多个颜色之间创建高度自定义的过渡。可以使用或显式地定义颜色停止的位置。如果您没有指定颜色的位置,它将被放置在它前面和后面颜色的中间。下面两个梯度是相等的

linear-gradient(red, orange, yellow, green, blue);
linear-gradient(red 0%, orange 25%, yellow 50%, green 75%, blue 100%);

默认情况下,如果没有带有0%停止的颜色,则声明的第一个颜色将在该点。同样,最后一种颜色将继续到100%标记,或者如果在最后一站没有声明长度,则在100%标记处。

允许多位置彩色停机,通过在CSS声明中包含两个位置,可以将一个颜色声明为两个相邻的颜色停止点。下面三个梯度是相等的

linear-gradient(red 0%, orange 10%, orange 30%, yellow 50%, yellow 70%, green 90%, green 100%);
linear-gradient(red, orange 10% 30%, yellow 50% 70%, green 90%);
linear-gradient(red 0%, orange 10% 30%, yellow 50% 70%, green 90% 100%);

创建不带渐变的纯色带

background: linear-gradient(red 0% 30%, yellow 30% 60%, blue 30% 100%);

绘制三角图形

在该例子中,通过将其中一种色彩设置为透明色transparent,可获得上三角或者下三角

.box {
    width: 100px;
    height: 100px;
    background-image: linear-gradient(45deg, yellow 50%, red 50%);
    /* 等价于background-image: linear-gradient(45deg, yellow 0 50%, red 50% 100%);  */
    background-size: 100% 100%;
}

创建方块背景图

由四个三角形组成两个小方块。

.box {
    height: 90px;
    background-image: linear-gradient(45deg, red 25%,transparent 0),
    linear-gradient(45deg, transparent 75%, red 0),
    linear-gradient(45deg, red 25%, transparent 0),
    linear-gradient(45deg, transparent 75%, red 0);
    background-size: 30px 30px;
    border: 1px solid pink;
    background-position: 0 0,-15px 15px,15px -15px,0 0;
}

网格线

height: 300px;
    background-image: linear-gradient(to right,pink 1px, transparent 1px), linear-gradient(pink 1px, transparent 1px);
    background-size: 30px 30px;

注意事项

带前缀的渐变设置角度的差异性

linear-gradient(0deg, red ,blue)不太前缀的渐变默认是从上往下渐变。加上前缀以后,是从做左往右。

background-image:-webkit-linear-gradient(0deg,skyblue,orange);
	background-image:-moz-linear-gradient(0deg,skyblue,orange);
	background-image:-o-linear-gradient(0deg,skyblue,orange);
	background-image:-ms-linear-gradient(0deg,skyblue,orange);

为了保持两者一致,可采用互补的写法,带前缀的和不带前缀的角度值相加为90deg。

background-image:-webkit-linear-gradient(90deg,skyblue,orange);
//等价
linear-gradient(0deg, red ,blue)

渐变方向关键词

-webkit-linear-gradient(right,skyblue,orange) 等价于 gradient(to left,skyblue,orange),是一个从右往左的渐变。

到此这篇关于CSS中的linear-gradient参数学习与使用的文章就介绍到这了,更多相关css linear-gradient参数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!

相关文章

  • CSS实现风吹动树叶的动画效果

    这篇文章主要为大家详细介绍了如何CSS实现简单的风吹动树叶的动画效果,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-01-05
  • CSS中的linear-gradient参数学习与使用示例教程

    inear-gradient函数用于创建一个表示两种或多种颜色线性渐变的图片,创建一个线性渐变,需要指定两种颜色,可以实现不同方向指定为一个角度的渐变效果,如果不指定方向,默
    2024-01-05
  • CSS 实现轮播图效果(自动切换、无缝衔接、小圆点切换)

    这篇文章主要介绍了CSS 实现轮播图效果(自动切换、无缝衔接、小圆点切换),,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋
    2023-12-27
  • 纯css实现自动+手动图片轮播效果

    这篇文章主要介绍了纯css实现自动+手动图片轮播效果,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-12-27
  • 使用CSS实现实现呼吸灯效果

    在现代前端开发中,为网站添加吸引人的动画效果是提高用户体验的一种常见方式,其中,呼吸灯效果是一种简单而又引人注目的动画,下面就跟随小编一起深入学习一下如何利用CSS
    2023-12-25
  • CSS中常见选择器的介绍与使用

    CSS选择器是CSS的基石,赋予开发者精确控制HTML文档中元素样式的能力,这篇文章主要为大家详细介绍了常见的一些CSS选择器并提供示例代码,感兴趣的小伙伴可以跟随小编一起学
    2023-12-19
  • CSS中mix-blend-mode属性的应用详解

    在前端开发的大海中,CSS是那抹不可或缺的颜料,为网站的界面着色,本文将聚焦于其中一种鲜为人知却强大的CSS属性——mix-blend-mode,深入探讨其定义、应用场景及用法,感
    2023-12-14
  • CSS实现强制换行、行省略、一行半的示例代码

    在CSS 中,目前并没有直接实现一行半效果的属性,但是可以通过组合使用其他属性来模拟这种效果,具有一定的参考价值,感兴趣的可以了解一下
    2023-12-12
  • 使用CSS实现一个滚动阴影效果

    为了良好的用户体验,需要在容器顶部可滚动的情况下增加一个阴影条,提示用户可向上滚动,本文主要为大家详细介绍了如何使用CSS实现简单的滚动阴影效果,有需要的小伙伴可
    2023-12-12
  • Css Flex弹性布局中的换行与溢出处理

    本文将详细介绍Flex布局中的换行与溢出处理方法,在实际开发中,灵活运用这些方法,可以帮助我们更好地处理元素的布局与溢出内容,具有一定的参考价值,感兴趣的可以了解一
    2023-12-07

最新评论