CSS实现渐变色

news2025/1/19 16:30:34

渐变色分为线性渐变和径向渐变。

线性渐变linear-gradient(方向, 颜色1, 颜色2, … ,颜色n)
径向渐变radial-gradient(颜色1 覆盖区域大小, 颜色2 覆盖区域大小, … )

线性渐变的方向可以为:
​ 1、一个方向值时: to bottom 表示从上边到下边渐变
​ 2、两个方向值时: to right bottom 表示从左上角到右下角渐变

​ 径向渐变的覆盖区域大小为百分比,表示该颜色覆盖的范围
​ 例如: radial-gradient(green 30%, yellow 80%);
​ 表示绿色占了整个区域的30%,黄色占了整个区域的20%,绿色与黄色过渡的部分占了整个区域的50%;

线性渐变

线性渐变使用linear-gradient,语法如下:

background-image: linear-gradient(渐变方向, 颜色1[位置1], 颜色2[位置2], 颜色3[位置3]…);

渐变方向有以下几种值:

to top 表示从下往上的方式进行渐变
to bottom 表示从上往下的方式进行渐变
to right 表示从左往右的方式进行渐变
to left 表示从右往左的方式进行渐变
to top left 表示从右下向左上进行渐变(top和left可以交换位置,下同)
to top right 表示从左下向右上进行渐变
to bottom left 表示从右上向左下进行渐变
to bottom right 表示从左上向右下进行渐变

使用角度表示,例如0deg等同于to top, 90deg等同于to right
使用弧度,单位为rad
使用turn,代表环绕圆圈的圈数,0.5turn表示半圈,也就是180deg
使用grad,表示百分度,400grad表示360deg

径向渐变

径向渐变使用radial-gradient,语法如下:

background-image: radial-gradient(颜色1 覆盖区域大小, 颜色2 覆盖区域大小,);

圆形

.box {
	width: 200px;
	height: 200px;
	background-image: radial-gradient(circle, red, blue);
}

在这里插入图片描述
椭圆形

.box {
	width: 200px;
	height: 200px;
	background-image: radial-gradient(ellipse, red, blue);
}

在这里插入图片描述
重复性径向渐变

.box {
	width: 200px;
	height: 200px;
	border-radius: 50%;
	background-color: red;
	/* 针对不支持渐变的浏览器 */
	background-image: repeating-radial-gradient(red, yellow 10%, green 20%);
}

在这里插入图片描述

边框线性渐变

语法如下:

border-image: linear-gradient(方向,颜色1,颜色2) 内向偏移量;

表示盒子有一个从左上角到右下角进行由黄色到绿色的5px宽的渐变边框,示例如下:

//边框的颜色为什么不重要,会被下面覆盖的
border: 5px solid;
//最后面跟的 5 表示内向偏移量,写成和边框设置的宽度一样即可
border-image: linear-gradient(to bottom right,yellow, green) 5;

在这里插入图片描述

径向渐变

语法如下:

border-image: radial-gradient(颜色1 百分比,颜色2 百分比…) 内向偏移量

表示盒子有一个从中心向到外进行由黄色到绿色的5px宽的渐变边框,示例如下:

//边框的颜色为什么不重要,会被下面覆盖的
border: 5px solid black;
//最后面跟的 5 表示内向偏移量,写成和边框设置的宽度一样即可  
border-image: radial-gradient(yellow 70%, green 130%) 5;

在这里插入图片描述

底部边框线性渐变

从左到右,由透明开始向蓝色渐变

/*首先我们设置边框只显示底部,宽度为5px的实线。*/
border-bottom: 5px solid;
/*设置线性渐变*/
border-image: linear-gradient(90deg, rgba(0, 216, 247, 0) 0%, #00afed 100%) 5 5 5 5;

在这里插入图片描述

右侧边框线性渐变

从上到下,从起始开始,透明向蓝色渐变到20%的位置,然后又向透明进行渐变到99%的位置,99%到结束是透明

/*首先我们设置边框只显示右侧,宽度为5px的实线。*/
border-right: 5px solid;
/*设置线性渐变*/
border-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #00bbf2 20%, rgba(255, 255, 255, 0) 99%) 5 5 5 5;

在这里插入图片描述

扩展

一个集合180种免费的线性渐变网站,可在任何网站使用您不仅可以复制渐变的原生CSS颜色代码,还可以查看下载每个优质的渐变图片。网址是http://color.oulu.me
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1674265.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringAMQP 发布订阅-DirectExchange

DirectExchange: 路由模式模型 代码实现 直接通过注解方式绑定交换机和队列,这里边加了key也就是BingdingKey绑定key,可以看作交换机的路由规则,交换机收到消息后读取消息中指定的Routingkey发送到存有相应BingdingKey的队列中。 RabbitLis…

【Power BI】DAX语言 VS Power Query M语言

DAX(Data Analysis Expressions)和Power Query M语言是Microsoft Power BI和Excel中的两种强大的数据处理和分析工具。尽管它们在许多方面都有重叠之处,特别是用于数据建模和数据转换,但它们在用途、语法和功能上有显著的区别。本…

联想移动硬盘数据不见了?别急,分享4种实用恢复方法

在数字化时代,硬盘作为数据存储的核心设备,承载着大量的重要信息和文件。然而,有时我们可能会遭遇硬盘数据丢失的困境,特别是当这个问题发生在联想硬盘上时,更是让人倍感焦虑。本文将深入探讨联想硬盘数据丢失的可能原…

【热门话题】Vue.js:现代前端开发的轻量级框架之旅

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 Vue.js:现代前端开发的轻量级框架之旅一、Vue.js概览1.1 Vue.js的诞…

如何完美实现文件外发防泄漏,保护核心数据资产?

不管是大型企业,还是小型创业公司,不论企业规模大小,每天都会有大量的文件要进行内部传输协作和对外发送使用,数据的生产也是企业业务生产力的体现之一。因此文件外发防泄漏是企业信息安全中的一个重要议题,为了防止企…

关于‘==’与equals的区别

我写的也不清楚,有兴趣的可以看这位大佬的文章链接,说的很清楚 https://www.cnblogs.com/Latiny/p/8099581.html#!comments 与 equals 方法 判断两个变量是否相等有两种方式:一种是利用 运算符,另一种是利用equals方法。 注意…

YOLOv9全网最新改进系列::YOLOv9完美融合双卷积核(DualConv)来构建轻量级深度神经网络,目标检测模型有效涨点神器!!!

YOLOv9全网最新改进系列::YOLOv9完美融合双卷积核(DualConv)来构建轻量级深度神经网络,目标检测模型有效涨点神器!!! YOLOv9原文链接戳这里,原文全文翻译请关注B站Ai学术叫叫首er …

Flutter 依据JSON数据自动生成实体类

json自动化生成工具 点击这里可以跳转 页面是这样的 然后在左边输入你的json数据,它会自动生成对应的实体类 生成的实体类是如下: import package:json_annotation/json_annotation.dart; part merch_region.g.dart;JsonSerializable()class MerchReg…

Java面试八股之反射慢在哪里

Java反射慢在哪里 动态类型检查: 在反射过程中,Java需要在运行时确定类、方法、字段等的类型信息。这与编译时已经确定类型信息的常规对象访问不同,反射需要额外的类型查询和验证,增加了性能开销。 安全检查: 反射…

【流体模拟-01】如何模拟静态流(上)

文章目录 一、说明二、摘要三、简介四、稳定的纳维-斯托克斯4.1 基本方程4.2 解决方法 一、说明 关于流体物质的仿真和模拟,需要流体理论方面的一般知识。我们这里从基本流体方程入手,详细解释如何实现流体仿真的每一个具体步骤。 二、摘要 构建类似流体…

应急救灾北斗终端手机应用方案

在应对自然灾害和紧急救援的严峻挑战中,技术的力量从未如此重要。为了保障救援人员能够迅速、准确地响应灾情,提供及时有效的救助,顶坚应急救灾北斗终端手机应用应运而生。这款应用依托北斗卫星导航系统的高精度定位与通信功能,不…

企业OA办公系统开发笔记:2、MyBatis-Plus

文章目录 企业办公系统:2、MyBatis-Plus一、MyBatis-Plus1、简介2、主要特点3、依赖 二、MyBatis-Plus入门1、配置文件2、启动类3、实体类4、添加Mapper类5、测试Mapper接口6、CRUD测试6.1、insert添加6.1.1、示例6.1.2、主键策略 6.2、更新6.3、删除6.3.1、根据id删…

LoRA Land: 310个经微调的大语言模型可媲美GPT-4

摘要 低秩自适应 (LoRA) 已成为大语言模型 (LLM) 参数有效微调 (PEFT) 中最广泛采用的方法之一。LoRA 减少了可训练参数的数量和内存使用,同时达到了与全面微调相当的性能。该研究旨在评估在实际应用中训练和服务使用 LoRA 微调的 LLM 的可行性。首先,该研究测量了在 10 个基础…

学校为何更热衷于使用SOLIDWORKS教育版教学

在当今的教育环境中,SOLIDWORKS教育版因其独特的优势,越来越受到学校的青睐。为什么学校更热衷于使用SolidWorks教育版进行教学呢?本文将从以下几个方面进行阐述。 首先,SOLIDWORKS教育版为学生们提供了一个与实际工程应用紧密结…

java学习之zip炸弹攻击

一、概述 Zip炸弹是一种特殊类型的Zip文件,它包含了大量的无用数据。Zip文件格式允许使用压缩算法来减小文件的大小,但是如果Zip文件中的某些内容被重复压缩,就会导致文件大小急剧增加。Zip炸弹利用这个特性,将一些无用的数据多次…

vscode调试Electron+ts

调试Electronjs 调试Electronjs: https://www.electronjs.org/zh/docs/latest/tutorial/debugging-vscode 调试Electronts 首先看一下,我的目录结构。目录结构决定了launch.json中的路径部分。我将在项目根目录下进行调试,项目根目录下包含electron代码…

Windows Qt中支持heic 图片显示

安装vcpkg: git clone https://github.com/microsoft/vcpkg 执行脚本: .\vcpkg\bootstrap-vcpkg.bat 在安装之前如果需要指定vs的编译器, 在如下文件中做更改, 我指定的是用vs2019编译的: D:\vcpkg\vcpkg\triplets 增…

腐烂的橘子 - (LeetCode)

一、概述 994. 腐烂的橘子 - 力扣(LeetCode),今天刷到这道题,开始按照自己实现的思路写了一次,通过了调试,但是提交的时候,来了一个大的数据,就没有通过测试,百思不得其…

Redis-持久化操作-RDB

Redis持久化 由于Redis的数据都存放在内存中,如果没有配置持久化,Redis重启后数据就全丢失了,于是需要开启 Redis的持久化功能,将数据保存到磁盘上,当Redis重启后,可以从磁盘中恢复数据。 Redis提供了两个…

内联函数+auto关键字(C++11)+指针空指针nullptr(C++11)

内联函数auto关键字(C11)指针空指针nullptr(C11)详解 内联函数概念特性 auto关键字(C11)auto简介auto的使用细则auto不能推导的场景 基于范围的for循环(C11)范围for的语法范围for的使用条件 指针空指针null…