CSS radial-gradient函数详解
目录
基本语法
关键参数详解
1. 渐变形状(Shape)
2. 渐变大小(Size)
3. 中心点位置(Position)
4. 颜色断点(Color Stops)
常见应用场景
1. 基本圆形渐变
2. 椭圆渐变
3. 模拟光源效果
4. 多色渐变
5. 重复放射性渐变
高级技巧
1. 创建圆形光晕
2. 组合多个渐变
3. 实现 3D 球体效果
注意事项
示例代码
radial-gradient()
是 CSS 中用于创建放射性渐变的函数,它会从一个中心点向外扩散形成圆形或椭圆形的渐变效果。与线性渐变(linear-gradient
)不同,放射性渐变的颜色过渡是从中心向四周辐射的。
基本语法
css
background: radial-gradient([shape] [size] [at position],color-stop1,color-stop2,...
);
- 核心参数:
shape
:渐变形状(圆形或椭圆形)。size
:渐变的大小(如closest-side
、farthest-corner
)。position
:渐变中心点的位置(如center
、top left
)。color-stop
:颜色断点(如red 0%
,blue 100%
)。
关键参数详解
1. 渐变形状(Shape)
circle
:圆形(等宽高)。ellipse
:椭圆形(默认值,根据容器比例自适应)。
css
.circle-gradient {background: radial-gradient(circle, red, yellow);
}.ellipse-gradient {background: radial-gradient(ellipse, red, yellow);
}
2. 渐变大小(Size)
控制渐变结束点的位置,可选值:
closest-side
:渐变到最近的边停止。closest-corner
:渐变到最近的角停止。farthest-side
:渐变到最远的边停止(默认值)。farthest-corner
:渐变到最远的角停止。- 具体长度值(如
100px
)或百分比(如50%
)。
css
.closest-side {background: radial-gradient(circle closest-side, red, yellow);
}.farthest-corner {background: radial-gradient(circle farthest-corner, red, yellow);
}
3. 中心点位置(Position)
使用 at
关键字指定中心点,语法与 background-position
类似:
- 关键字(如
at top left
、at center
)。 - 长度值(如
at 20px 50px
)。 - 百分比(如
at 30% 70%
)。
css
.top-left {background: radial-gradient(circle at top left, red, yellow);
}.custom-position {background: radial-gradient(circle at 20% 80%, red, yellow);
}
4. 颜色断点(Color Stops)
与线性渐变类似,可指定多个颜色及其位置:
css
multi-color {/* 从红到绿到蓝的渐变 */background: radial-gradient(circle, red 0%, green 50%, blue 100%);
}
常见应用场景
1. 基本圆形渐变
css
.circle {background: radial-gradient(circle, #ff9a9e, #fad0c4);
}
2. 椭圆渐变
css
.ellipse {background: radial-gradient(ellipse, #a1c4fd, #c2e9fb);
}
3. 模拟光源效果
css
.light {background: radial-gradient(circle at center, white, rgba(255,255,255,0) 70%);
}
4. 多色渐变
css
rainbow {background: radial-gradient(circle,red 0%, orange 20%, yellow 40%,green 60%, blue 80%, purple 100%);
}
5. 重复放射性渐变
使用 repeating-radial-gradient()
创建重复图案:
css
.stripes {background: repeating-radial-gradient(circle,#f0f0f0,#f0f0f0 10px,#e0e0e0 10px,#e0e0e0 20px);
}
高级技巧
1. 创建圆形光晕
css
.halo {width: 200px;height: 200px;background: radial-gradient(circle,rgba(255,255,255,0.8) 0%,rgba(255,255,255,0) 70%);border-radius: 50%;
}
2. 组合多个渐变
通过 background-image
叠加多个渐变:
css
.combined {background-image: radial-gradient(circle at 10% 20%, rgba(255,94,247,0.4) 0%, rgba(218,255,165,0.4) 90.1%),radial-gradient(circle at 80% 50%, rgba(0,255,255,0.4) 0%, rgba(255,121,0,0.4) 90%);
}
3. 实现 3D 球体效果
css
.ball {width: 100px;height: 100px;background: radial-gradient(circle at 30% 30%,white 0%,#66ccff 20%,#0066cc 100%);border-radius: 50%;box-shadow: 0 5px 15px rgba(0,0,0,0.3);
}
注意事项
-
浏览器兼容性
所有现代浏览器均支持,IE10+ 需要前缀-webkit-
。 -
性能考虑
复杂的渐变(如多层叠加、高分辨率)可能影响渲染性能。 -
回退方案
建议为不支持渐变的浏览器提供纯色背景:css
.element {background: #ccc; /* 回退颜色 */background: radial-gradient(circle, #fff, #ccc); }
-
渐变定位与尺寸
- 使用
circle
时,确保容器是正方形,否则会自动变为椭圆。 size
参数可能影响渐变的视觉效果,需根据需求调整。
- 使用
示例代码
html
预览
<style>.example {width: 300px;height: 200px;margin: 20px;border-radius: 10px;}.basic-circle {background: radial-gradient(circle, #ff5e62, #ff9966);}.custom-size {background: radial-gradient(circle closest-side at 20% 30%, #4facfe, #00f2fe);}.multiple-colors {background: radial-gradient(ellipse,#a18cd1 0%,#fbc2eb 50%,#8ec5fc 100%);}.repeating {background: repeating-radial-gradient(circle,#e66465 0px,#9198e5 20px,#e66465 40px);}
</style><div class="example basic-circle"></div>
<div class="example custom-size"></div>
<div class="example multiple-colors"></div>
<div class="example repeating"></div>
通过组合不同的形状、大小、位置和颜色断点,radial-gradient()
可以创建出丰富多样的视觉效果,从简单的背景到复杂的图案都能轻松实现。
相关文章:
CSS radial-gradient函数详解
目录 基本语法 关键参数详解 1. 渐变形状(Shape) 2. 渐变大小(Size) 3. 中心点位置(Position) 4. 颜色断点(Color Stops) 常见应用场景 1. 基本圆形渐变 2. 椭圆渐变 3. 模…...
n8n 自动化平台 Docker 部署教程(附 PostgreSQL 与更新指南)
n8n 自动化平台 Docker 部署教程(附 PostgreSQL 与更新指南) n8n 是一个强大的可视化工作流自动化工具,支持无代码或低代码地集成各种服务。本文将手把手教你如何通过 Docker 快速部署 n8n,并介绍如何使用 PostgreSQL、设置时区以…...

关于datetime获取时间的问题
import datetime print(datetime.now())如果用上述代码,会报错: 以下才是正确代码: from datetime import datetime print(datetime.now()) 结果: 如果想格式化时间,使用代码: from datetime import da…...
前端面试五之vue2基础
1.属性绑定v-bind(:) v-bind 是 Vue 2 中用于动态绑定属性的核心指令,它支持多种语法和用法,能够灵活地绑定 DOM 属性、组件 prop,甚至动态属性名。通过 v-bind,可以实现数据与视图之间的高效同…...
使用python实现奔跑的线条效果
效果,展示(视频效果展示): 奔跑的线条 from turtle import * import time t1Turtle() t2Turtle() t3Turtle() t1.hideturtle() t2.hideturtle() t3.hideturtle() t1.pencolor("red") t2.pencolor("green") t3…...
Oracle 审计参数:AUDIT_TRAIL 和 AUDIT_SYS_OPERATIONS
Oracle 审计参数:AUDIT_TRAIL 和 AUDIT_SYS_OPERATIONS 一 AUDIT_TRAIL 参数 1.1 参数功能 AUDIT_TRAIL 是 Oracle 数据库中最核心的审计控制参数,决定审计记录的存储位置和记录方式。 1.2 参数取值及含义 取值说明适用场景NONE禁用数据库审计测试环…...
Android LinearLayout、FrameLayout、RelativeLayout、ConstraintLayout大混战
一、为什么布局性能如此重要? 在Android应用中,布局渲染耗时直接决定了界面的流畅度。根据Google官方数据,超过60%的卡顿问题源于布局性能不佳。本文将彻底解析三大传统布局的性能奥秘,并提供可直接落地的优化方案。 二、三大布局…...

Unity版本使用情况统计(更新至2025年5月)
UWA发布|本期UWA发布的内容是Unity版本使用统计(第十六期),统计周期为2024年11月至2025年5月,数据来源于UWA网站(www.uwa4d.com)性能诊断提测的项目。希望给Unity开发者提供相关的行业趋势作为参…...

GPUCUDA 发展编年史:从 3D 渲染到 AI 大模型时代(上)
目录 文章目录 目录1960s~1999:GPU 的诞生:光栅化(Rasterization)3D 渲染算法的硬件化实现之路 学术界算法研究历程工业界产品研发历程光栅化技术原理光栅化技术的软件实现:OpenGL 3D 渲染管线设计 1. 顶点处理&…...

人机融合智能 | 可穿戴计算设备的多模态交互
可穿戴计算设备可以对人体以及周围环境进行连续感知和计算,为用户提供随时随地的智能交互服务。本章主要介绍人机智能交互领域中可穿戴计算设备的多模态交互,阐述以人为中心的智能穿戴交互设计目标和原则,为可穿戴技术和智能穿戴交互技术的设计提供指导,进而简述支持智能穿戴交…...

Impromptu VLA:用于驾驶视觉-语言-动作模型的开放权重和开放数据
25年5月来自清华和博世的论文“Impromptu VLA: Open Weights and Open Data for Driving Vision-Language-Action Models”。 用于自动驾驶的“视觉-语言-动作” (VLA) 模型前景光明,但在非结构化极端场景下却表现不佳,这主要是由于缺乏有针对性的基准测…...

AI智能体,为美业后端供应链注入“智慧因子”(4/6)
摘要:本文深入剖析美业后端供应链现状,其产品具有多样性、更新换代快等特点,原料供应和生产环节也面临诸多挑战。AI 智能体的登场为美业后端供应链带来变革,包括精准需求预测、智能化库存管理、优化生产计划排程、升级供应商管理等…...

跨平台资源下载工具:res-downloader 的使用体验
一款基于 Go Wails 的跨平台资源下载工具,简洁易用,支持多种资源嗅探与下载。res-downloader 一款开源免费的下载软件(开源无毒、放心使用)!支持Win10、Win11、Mac系统.支持视频、音频、图片、m3u8等网络资源下载.支持视频号、小程序、抖音、…...
ps蒙版介绍
一、蒙版的类型 Photoshop中有多种蒙版类型,每种适用于不同的场景: 图层蒙版(Layer Mask) 作用:控制图层的可见性,黑色隐藏、白色显示、灰色半透明。特点:可随时编辑,适合精细调整。…...

数据湖是什么?数据湖和数据仓库的区别是什么?
目录 一、数据湖是什么 (一)数据湖的定义 (二)数据湖的特点 二、数据仓库是什么 (一)数据仓库的定义 (二)数据仓库的特点 三、数据湖和数据仓库的区别 (一&#…...
用Ai学习wxWidgets笔记——在 VS Code 中使用 CMake 搭建 wxWidgets 开发工程
声明:本文整理筛选Ai工具生成的内容辅助写作,仅供参考 >> 在 VS Code 中使用 CMake 搭建 wxWidgets 开发工程 下面是一步步指导如何在 VS Code 中配置 wxWidgets 开发环境,包括跨平台设置(Windows 和 Linux)。…...

【深度学习新浪潮】如何入门三维重建?
入门三维重建算法技术需要结合数学基础、计算机视觉理论、编程实践和项目经验,以下是系统的学习路径和建议: 一、基础知识储备 1. 数学基础 线性代数:矩阵运算、向量空间、特征分解(用于相机矩阵、变换矩阵推导)。几何基础:三维几何(点、线、面的表示)、射影几何(单…...
Android实现点击Notification通知栏,跳转指定activity页面
效果 1、点击通知栏通知,假如app正在运行,则直接跳转到指定activity显示具体内容,在指定activity中按返回键返回其上一级页面。 2、点击通知栏通知,假如app已经退出,先从SplashActivity进入,显示app启动界…...

Codeforces Round 1025 (Div. 2) B. Slice to Survive
Codeforces Round 1025 (Div. 2) B. Slice to Survive 题目 Duelists Mouf and Fouad enter the arena, which is an n m n \times m nm grid! Fouad’s monster starts at cell ( a , b ) (a, b) (a,b), where rows are numbered 1 1 1 to n n n and columns 1 1 1 t…...

ubuntu中使用docker
上一篇我已经下载了一个ubuntu:20.04的镜像; 1. 查看所有镜像 sudo docker images 2. 基于本地存在的ubuntu:20.04镜像创建一个容器,容器的名为cppubuntu-1。创建的时候就会启动容器。 sudo docker run -itd --name cppubuntu-1 ubuntu:20.04 结果出…...
复制与图片文件同名的标签文件到目标路径
引言:在数据集构建中,我们经常需要挑选一些特殊类型的图片(如:零件中有特殊脏污背景的图片,写论文的时候想单独对这类情况进行热力图验证)。我们把挑选出来的图片放到一个文件夹下,这时候我想快…...
【深度学习-Day 24】过拟合与欠拟合:深入解析模型泛化能力的核心挑战
Langchain系列文章目录 01-玩转LangChain:从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块:四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain:从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…...

[ElasticSearch] DSL查询
🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏: 🧊 Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 🍕 Collection与…...

iview中的table组件点击一行中的任意一点选中本行
<Table border ref"selection" size"small" on-row-click"onClickRow"></Table>// table组件点击一行任意位置选中onClickRow(row, index) {this.$refs.selection.toggleSelect(index)}写上toggleSelect(index)方法即可,…...

《探秘跨网段局域网IP广播:解锁网络通信的新姿势》
一、从基础出发:广播与跨网段 在计算机网络的世界中,广播域是一个至关重要的概念。简单来说,广播域是指网络中能接收任一台主机发出的广播帧的所有主机集合。当一台主机在广播域内发出一个广播帧时,同一广播域内的所有其他主机都可以收到该广播帧。在没有路由器或 VLAN 分割…...
Kafka 单机部署启动教程(适用于 Spark + Hadoop 环境)
🧭 Kafka 单机部署启动教程(适用于 Spark Hadoop 环境) 📦 一、Kafka 版本选择 推荐使用 Kafka 2.13-2.8.1(Scala 2.13,稳定适配 Spark 3.1.2 和 Hadoop 3.1.1) 下载地址(Apache 官…...

maven微服务${revision}依赖打包无法识别
1、场景描述 我现在又一个微服务项目,父pom的版本,使用<properties>定义好,如下所示: <name>ypsx-finance-center</name> <artifactId>ypsx-finance</artifactId> <packaging>pom</pack…...

2025年06月07日Github流行趋势
项目名称:netbird 项目地址url:https://github.com/netbirdio/netbird项目语言:Go历史star数:14824今日star数:320项目维护者:mlsmaycon, braginini, pascal-fischer, lixmal, pappz项目简介:使…...

WPS中将在线链接转为图片
WPS中将在线链接转为图片 文章目录 WPS中将在线链接转为图片一:解决方案1、下载图片,精确匹配(会员功能)2、将在线链接直接转为图片 一:解决方案 1、下载图片,精确匹配(会员功能) …...

实战二:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...