把 CSS 径向渐变用得出神入化,只用一个 DOM 元素就能画出国宝熊猫--------------------微软 连线

前端css中径向渐变(radial-gradient)的使用 radial-gradient径向渐变可以在网页的元素上创建一个从中心点往外的圆形或椭圆形的颜色渐变。常配合背景图片background-image进行使用。基本上能添加背景图片效果的元素组件,如按钮、标签、模型背景、文字等都可以添加径向渐变的效果。径向渐变可以理解为给背景添加图片的效果,图片不能够直接使用动画效果animation进行动画效果过渡转变的。本文只是简单说一下渐变的各种语法属性。没有专门对元素组件如按钮、标签、窗体背景、文本等举例使用。 阅读详情
35

图片描述

效果预览

按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。

https://codepen.io/comehope/pen/odKrpy

可交互视频教程

此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。

请用 chrome, safari, edge 打开观看。

https://scrimba.com/p/pEgDAM/cV7J6SK

源代码下载

每日前端实战系列的全部源代码请从 github 下载:

https://github.com/comehope/front-end-daily-challenges

代码解读

定义 dom,只有一个元素:

<div class="panda"></div>

居中显示:

body {
    margin: 0;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: mediumturquoise;
}

定义容器尺寸:

.panda {
    width: 21em;
    height: 16em;
    background-color: white;
}

画出头部轮廓:

.panda {
    border: 0.5em solid #333;
    border-top-left-radius: 11em;
    border-top-right-radius: 11em;
    border-bottom-left-radius: 11em 6em;
    border-bottom-right-radius: 11em 6em;
}

画出右眼轮廓:

.panda {
    position: relative;
}

.panda::before {
    content: '';
    position: absolute;
    width: 7em;
    height: 4em;
    left: 2.9em;
    top: 5.5em;
    background-color: #333;
    border-radius: 50% 50% 45% 42%;
    transform: rotate(-45deg);
}

类似地,画出左眼轮廓:

.panda::after {
    content: '';
    position: absolute;
    width: 7em;
    height: 4em;
    left: 11.1em;
    top: 5.5em;
    background-color: #333;
    border-radius: 50% 50% 42% 45%;
    transform: rotate(45deg);
}

画出两只耳朵:

.panda::before {
    box-shadow: 1em -7.2em 0 -0.4em #333;
}

.panda::after {
    box-shadow: -1em -7.2em 0 -0.4em #333;
}

画出两只眼睛:

.panda::before {
    background-image: 
        radial-gradient(circle at 5.1em 2em, white 0.3em, transparent 0.3em), 
        radial-gradient(circle at 4.6em 2em, #333 0.7em, transparent 0.7em), 
        radial-gradient(circle at 4.5em 2em, white 1em, transparent 1em);
}

.panda::after {
    background-image: 
        radial-gradient(circle at 2.4em 1.5em, white 0.3em, transparent 0.3em), 
        radial-gradient(circle at 2.4em 2em, #333 0.7em, transparent 0.7em), 
        radial-gradient(circle at 2.5em 2em, white 1em, transparent 1em);
}

画出鼻子和嘴:

.panda {
    background-image: 
        radial-gradient(ellipse at 50% 60%, #333 1.2em, transparent 1.2em),
        radial-gradient(ellipse at 50% 80%, #555 0.6em, transparent 0.6em);
}

增加一点立体效果:

.panda {
    border-bottom-width: 1em;
    box-shadow: inset 1em -1em 0 #eee;
}

让右眼动起来:

.panda::before {
    animation: before-animate 1s ease-in-out infinite alternate;
}

@keyframes before-animate {
    to {
        background-image: 
            radial-gradient(circle at 4.9em 1.8em, white 0.3em, transparent 0.3em), 
            radial-gradient(circle at 4.4em 1.8em, #333 0.7em, transparent 0.7em), 
            radial-gradient(circle at 4.5em 2em, white 1em, transparent 1em);
    }
}

类似地,让左眼也动起来:

.panda::after {
    animation: after-animate 1s ease-in-out infinite alternate -1s;
}

@keyframes after-animate {
    to {
        background-image: 
            radial-gradient(circle at 2.6em 1.3em, white 0.3em, transparent 0.3em), 
            radial-gradient(circle at 2.6em 1.8em, #333 0.7em, transparent 0.7em), 
            radial-gradient(circle at 2.5em 2em, white 1em, transparent 1em);
    }
}

最后,让黑眼圈和耳朵也动起来:

@keyframes before-animate {
    to {
        transform: rotate(-40deg);
    }
}

@keyframes after-animate {
    to {
        transform: rotate(40deg);
    }
}

大功告成!

css3质感分析(5)径向渐变叠加纹理(圆心可变) css3质感系列会详细分析网上流行的css3的一些质感效果, 让大家不再恐惧Css3,最终可以见到一张图片就可以构思出他的css3实现! 三个原则: 渐变叠加的顺序 径向渐变的起点 background-position的运用 1.径向渐变默认的圆心在中心,也即 50% 50%处 注意这个数字!(很多人可能会认为是0% 0%) 如图所示我制造一个小圆,根据上一文的知识 阅读详情

相关推荐

5G移动性管理实战:手把手教你配置NR小区重选参数(附避坑指南)

本文深入解析5G网络移动性管理中的小区重选参数配置实战。通过拆解小区选择与重选的核心机制,结合真实案例,手把手指导如何配置NR小区重选参数,并分享常见避坑指南,帮助工程师优化网络性能,提升用户移动体验。

weixin_29229261的博客 197

css背景渐变属性之径向渐变

CSS实现径向渐变的效果,普通的径向渐变和重复的径向渐变

aibai666的博客 8281

【C++PTA】6-1 Point类的运算 (10 分)

定义Point类,有坐标x,y两个私有成员变量;对Point类重载“+”(相加)、“-”(相减)和“==”(相等)运算符,实现对坐标的改变,要求用友元函数和成员函数两种方法实现。对Point类重载<<运算符,以使得代码 Point p; cout<<p<<endl;可以输出该点对象的坐标。 函数接口定义: 实现Point类。 裁判测试程序样例: /* 请在这里填写答案 */ int main(int argc, char const *argv[]) { P

libertye的博客 2366

CSS-径向渐变【看这一篇就够了!!!】

style>.box3 {/*blue 代表蓝色0% 表示蓝色出现的位置yellow 代表黄色50% 表示黄色出现的位置red 代表红色100% 表示红色出现的位置*/上面出现的位置仅代表颜色出现的地方,在颜色出现的地方会水平自动的向左右延伸,直到碰到其他的颜色从而形成渐进,在两个颜色发生转换的地方我们叫做“转换中点我们可以将中点移动到这两个颜色之间的任意位置。方法:“在两个颜色之间添加未标记的 % ,以知识颜色的转换中点。

zheshiyangyang的博客 3255

PyTorch深度学习实战(47)——使用PyTorch构建Transformer模型

相较于传统模型,如循环神经网络 (RNN),Transformer 的优势在于能够理解输入和输出序列中元素之间的关系,在大语言模型 (如 ChatGPT 和 DeepSeek) 的发展中起到了关键作用,为了从零开始构建 Transformer,首先探讨自注意力机制,包括查询 (query)、键 (key) 和值 (value) 向量,以及缩放点积注意力 (SDPA)。将层归一化和残差连接集成到多头注意力层中,并与前馈层结合,构建编码器层,堆叠编码器层构建编码器,还将实现 Transformer 中的解码器。

盼小辉丶的博客 2万+

如何解除“无法完成操作 因为文件包含病毒或潜在垃圾软件”

当运行软件遇到“无法完成操作 因为文件包含病毒或潜在垃圾软件”时,如何解决?控制面板-系统和安全-Windows Defender防火墙-自定义设置,将专用网络及公用网络关闭。点击后,选择“病毒和威胁防护”-管理配置。进入安全中心后,选择“病毒和威胁防护”将需要排斥的选项输入后,保存配置即可。2:打开windows安全中心。

笔者从事电信媒体开发多年,愿意将多年的开发经验分享给同行 6万+

利用css实现渐变色(通俗易懂)

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

DZQ1223的博客 4万+

泰凌微8258入门教程 基础篇①——Bluetooth® SIG Mesh 快速上手

Bluetooth® SIG Mesh Quick Start

6727

CSS之渐变

对于渐变需要熟悉属性值,只要属性熟悉了,渐变就很容易掌握。

qq_33978195的博客 1474

WPF在特定领域的应用:打造一款专业的图像编辑工具

WPF在特定领域的应用:打造一款专业的图像编辑工具,在软件开发的广阔领域中,Windows Presentation Foundation(WPF)以其强大的图形渲染能力和丰富的用户界面控件,为开发者提供了构建高性能、美观应用程序的平台。图像编辑工具作为一种对图形处理要求极高的应用类型,WPF 的特性使其成为理想的选择。本文将深入探讨如何使用 WPF 打造一款专业的图像编辑工具,涵盖从基础概念到实际代码实现的各个方面。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 6万+

人工智能训练师三级·模型生命周期真题40题|训练→评估→调优全链路通关

本文为人工智能训练师三级考试真题解析系列第2篇,聚焦模型生命周期全链路(训练→评估→调优)。内容包含40道精选真题,覆盖数据划分、模型训练、评估指标、超参数调优4个核心阶段。重点考察:1)数据集的合理划分方法(留出法、交叉验证);2)模型训练的基本原理;3)关键评估指标(准确率、召回率、F1等)的应用场景;4)超参数调优技术(网格搜索、随机搜索等)。通过真题解析帮助考生系统掌握模型生命周期的闭环迭代方法论,提升从数据准备到模型优化的全流程实践能力。适合备考人工智能训练师三级认证的考生学习参考。

白话机器学习 87

CSS 渐变效果详解——线性渐变与径向渐变

无论是线性渐变还是径向渐变,CSS 渐变技术都为网页设计提供了极大的灵活性和创造空间。本文详细介绍了两种渐变的基本原理、常见语法以及应用场景。希望通过本文,大家能对 CSS 渐变有更深入的了解,并在日常开发中能熟练运用这一特性,为项目增添更多绚丽的视觉效果。如果大家在学习或者使用 CSS 渐变时遇到问题,欢迎在评论区讨论交流。以上就是关于线性渐变和径向渐变的详细介绍与示例。希望对你有所帮助!

weixin_45474825的博客 4071

危废焚烧优化控制系统设计与实现:基于数据驱动的控制参数预测

本文提出了一种基于数据驱动的危险废物焚烧过程优化控制方法。系统利用历史运行数据和实时监测数据,通过深度学习模型预测关键控制参数,实现焚烧过程的智能化控制。系统采用Python开发,结合TensorFlow/PyTorch框架,构建了完整的数据采集、预处理、特征工程、模型训练和实时预测闭环系统。该系统能够处理多变量非线性关系,适应工况变化,从历史数据中学习最优控制策略,相比传统PID控制方法具有显著优势。论文详细介绍了系统架构、算法设计和实现细节,为危废焚烧过程的优化控制提供了有效解决方案。

huanghm88的专栏 202

CSS3中的径向渐变知识点整理

CSS3中的径向渐变知识点整 概念 渐变 (gradients) 可以让我们在两个或多个颜色之间进行平稳的过渡。 曾经我们只有使用图像来实现颜色的过渡效果,但渐变的出现,可以让用户使用时 减少下载的时间 和 宽带的使用 。 渐变效果的元素在放大时看起来效果会更好,这是因为渐变是由浏览器自己生成的。 渐变分为 线性渐变 和 径向渐变。 线性渐变(Linear Gradients):向下/向上/向左/向右/对角方向 径向渐变(Radial Gradients):由它们的中心定义 IE9及以下不兼容

m0_57533638的博客 1965

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

css radial-gradient 径向渐变基本语法与使用

在之前的文章《深入理解Css linear-gradient线性渐变》我们了解了CSS中的线性渐变,本文将介绍CSS中的另一种渐变———径向渐变(Radial Gradient)。

q1003675852的博客 2650

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

CSS 径向渐变

2. 如果第二个值是数字或百分比,则它是第一个值的偏移量,如果是第三个值,则是第二个值的偏移量。两个百分比:ending-shape省略时,表示椭圆的大小,第一个水平半径,第二个垂直半径。一个数字:如果ending-shape指定为圆形时,此值表示半径。两个值:一个是x坐标,一个是y坐标,可以是关键词,可以像素数,可以是百分比。:渐变结束的形状 默认为椭圆ellipse,可以设置为圆形circle。四个值:第一个和第三个是定义xy的关键词,第二个和第四个是偏移量。:径向渐变开始的位置,默认是中心点。

haoyanyu_的博客 1116

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

css的渐变效果

1.线性渐变 1.从上到下的渐变 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>线性渐变</title> <style type="text/css"> .box{ height: 200px; background-color: red; background-image:linear-gradient(red

m2282475145的博客 1万+

Css径向渐变 - radial-gradient

at 之后的position为径向渐变的中心位置,而形成的渐变图形的长宽与50% 50%时的长高差不多,所以会看起来造成一定的椭圆形状大小变化。函数中,你可以设置多个颜色停止点,渐变会从一个颜色停止点平滑过渡到下一个颜色停止点。颜色停止点用于定义渐变过程中颜色的变化位置和具体颜色值。径向渐变是颜色从一个中心点向外扩散的变化过程。二、radial-gradient 函数是什么。这一语法用于指定径向渐变的中心位置。3、颜色停止点-解释一下(

balbalaijk的博客 1630

【CSS】渐变背景详解:线性渐变(linear-gradient)和径向渐变(radial-gradient)

CSS 提供了两种常用的渐变类型——和,其中线性渐变最为常用。在这篇文章中,我们将深入探讨如何使用 CSS 渐变来为网页元素设置丰富的背景效果,掌握渐变的基本语法、应用场景及技巧。

m0_73856514的博客 3938

CSS radial-gradient径向渐变

回顾前面讲的linear-gradient线性渐变,它控制的是背景容器直线平面的渐变,而这里的radial-gradient径向渐变控制的是背景容器曲线平面的渐变,它和linear-gradient的语法相似。 radial-gradient 语法: radial-gradient( [ [ circle || &lt;length&gt;] [at &lt;posi...

小阳的博客 1624

CSS线性渐变和径向渐变详解

html零基础必看——html入门,编程就是如此简单 第九章:渐变色1.线性渐变1.1.什么是线性渐变1.2线性渐变的写法2.径向渐变2.1什么是径向渐变2.2径向渐变的写法总结 1.线性渐变 1.1.什么是线性渐变 线性渐变,顾名思义就是以某条直线边开始沿着某个方向的渐变。 属性是background,给背景的渐变色。 属性值是linear-gradient(),是一个函数,()里面写需要渐变的颜色; 创建一个线性渐变,需指定两种及两种以上的颜色进行一个平滑过渡形成的渐变色,可以实现从不同方向、不同角

xu_yuxuyu的博客 7206

关于CSS径向渐变的理解

关于CSS的径向渐变 CSS中的线性渐变已经有很多文章了, 但是径向渐变文章却很少, 一是大家对径向渐变的使用依旧很少, 二是代码依旧非常冗长. 因此在此研究了一下radial-gradient参数. 关于CSS的径向渐变 标准语法 参数说明 形状 半径 位置 起止颜色 标准语法 radial-gradient( [ circle || &lt;leng...

LoveofRedMoon的博客 3325

CSS 渐变

CSS 渐变CSS 渐变CSS 线性渐变语法线性渐变 - 从上到下(默认)实例线性渐变 - 从左到右实例线性渐变 - 对角线实例使用角度语法实例使用多个色标实例实例使用透明度实例重复线性渐变实例CSS 径向渐变语法径向渐变-均匀间隔的色标(默认)实例径向渐变-不同间距的色标实例设置形状实例重复径向渐变实例 CSS 渐变 CSS 渐变使您可以显示两种或多种指定颜色之间的平滑过渡。 CSS 定义了两种渐变类型: 线性渐变(向下/向上/向左/向右/对角线) 径向渐变(由其中心定义) CSS 线性渐变 如需

张恒华的博客 3491

CSS渐变效果:linear-gradient() 与 radial-gradient()

CSS渐变效果(背景色、文字颜色)linear-gradient() radial-gradient()

Blues_han的博客 790

【常见CSS扫盲之渐变效果】好看的24种CSS渐变效果汇总(附源码)

多种CSS渐变实例,CSS横向渐变,CSS径向渐变,CSS实现渐变,好看的渐变背景色,多种好看渐变效果图,好看样式demo,页面配色大全

赏樱看雪撸代码 3万+
上一篇: HTTP升级请求下面的TCP套接字保持
下一篇: 访问网站www.chinawebanalytics.cn时,在你的计算机中设置的Cookie的域名是www.abc.com,那么这个Cookie就是第三方Cookie,归www.abc.com所有为什
文谷
博客等级 码龄14年 4粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值