如何利用CSS制作一个聚光灯效果(附代码)

如何利用css制作一个聚光灯效果?下面本篇文章给大家分析一下实现原理,分享一下css聚光灯效果的实现代码,希望对大家有所帮助!

如何利用CSS制作一个聚光灯效果(附代码)

CSS聚光灯效果的实现原理很简单:

将两个文字完全重叠,内层是深灰色,外层是有渐变颜色的。【推荐学习:css视频教程】在将外层的文字套用圆形遮罩。最后加上 CSS Animation

技术支持

引用到的CSS属性有:

linear-gradient()background-imagebackground-clipclip-path

实现

为了将HTML结构保持简洁,之后会使用 伪类元素 去制作。

立即学习“前端免费学习笔记(深入)”;

HTML代码如下:

我想藏在罐头里

注意: attr() 理论上能用于所有的CSS属性但目前支持的仅有伪元素的 content 属性,其他的属性和高级特性目前是实验性的译者注:如果发现浏览器兼容表里attr()的高级用法依旧没有良好的支持的话,本文大部分内容都是纸上谈兵引用 MDN文档

CSS代码如下:

*{    margin: 0;    padding: 0;}:root{  --ellipse: 6.25rem;}html, body{    display: flex;    justify-content: center;    align-items: center;    height: 100vh;    background: #222;}h1{    font-size: 4rem;    color: #333;    width: 37.5rem;    position: relative;}h1::after{    /* attr(attribute_name) */    content:attr(data-text);    position: absolute;    top: 0;    left: 0;    color: pink;    clip-path: ellipse(var(--ellipse) var(--ellipse) at 0% 50%);    animation: move 5s infinite;}@keyframes move{    0%, 100%{        clip-path: ellipse(var(--ellipse) var(--ellipse) at 0% 50%);    }    50%{        clip-path: ellipse(var(--ellipse) var(--ellipse) at 100% 50%);    }}

实现效果如下:

1.gif

现在动态的聚光灯效果就完成了。

但是还有问题,不知道细心的小伙伴发现了没有,制作成品的文字是 彩色 的,原理就是加上背景图片,然后将文字作为遮罩,最后把color 改成透明,所以我们要修改一下代码。

h1:after 中新增代码 background-imagebackground-clip

h1::after{    /* 别忘记修改color为透明 */    color: transparent;    background-image: linear-gradient(to left,#1a2a6c,#b21f1f,#fdbb2d);    background-clip: text;    /* 因为background-clip是预览阶段的css属性,要加上一个前缀版本 */    -webkit-background-clip: text;}

看一下最终的完成效果:

2.gif

演示的源代码在这里 CodePen 链接:

https://codepen.io/jackbrens/pen/MWrGNed

总结

以上就是本次分享的全部内容~~

如果觉得文章写得不错,对你有所启发的,请不要吝啬 点个 关注 并在 评论区 留下你宝贵的意见哦~~

(学习视频分享:web前端)

以上就是如何利用CSS制作一个聚光灯效果(附代码)的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1623952.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 08:26:08
下一篇 2025年12月24日 08:26:25

相关推荐

  • 浅析CSS中怎么实现线性渐变(linear-gradient)

    css中怎么实现线性渐变?下面本篇文章给大家介绍一下css线性渐变函数linear-gradient()的使用方法,并聊聊线性渐变的多种应用,希望对大家有所帮助! linear-gradient 1. 语法 linear-gradient([[to |],]? , [, …]?)的使用 二者表现…

    2025年12月24日 好文分享
    000
  • 纯CSS实现水波纹的电池充电动画特效

    本篇文章给大家介绍一下巧用 css实现水波纹的电池充电动画特效的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 我们知道构成前端的三大语言有:html、css和js,其中最为神秘的便是css,为什么这么说呢?自从动画、过度等属性的出现,可以说只有你想不到,就没有做不到~ 上一…

    2025年12月24日 好文分享
    000
  • 聊聊如何用CSS box-shadow创建像素创意动画

    利用css也能创建像素创意动画!下面本篇文章给大家介绍一下用css box-shadow创建像素创意动画的方法,有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 本期我们要使用css3中的box-shadow属性来作画,相信大家也对box-shadow属性并不陌生,它主要用于在元素的…

    2025年12月24日 好文分享
    000
  • 关于 CSS 变量的一些你可能不了解的事!

    本篇文章带大家了解一下css 变量,介绍下没人告诉你关于 css 变量的那些事。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 CSS 变量很不错哦,但是你知道它们的详情?【推荐学习:css视频教程】 1. 小心 !important 与 CSS 变量一起使用 !important…

    2025年12月24日 好文分享
    000
  • 详细介绍CSS渐变、阴影和滤镜

    本篇文章给大家带来了关于css中渐变、阴影和滤镜的相关知识,其中包括了线性渐变、径向渐变、圆锥渐变等等相关问题,希望对大家有帮助。 推荐学习:css视频教程 一、初识 CSS 渐变 CSS 渐变是image类型的一种特殊类型用gradient表示,由两种或多种颜色之间的渐进过渡组成。 三种渐变类型:…

    2025年12月24日 好文分享
    000
  • 你必须了解Selenium使用CSS定位总结

    本篇文章给大家带来了关于selenium使用css定位总结的相关知识,css定位也有它的价值,css定位更快,语法更简洁,希望对大家有帮助。 大部分人在使用selenium定位元素时,用的是xpath定位,css定位往往被忽略掉了,其实css定位也有它的价值,css定位更快,语法更简洁 一、CSS …

    2025年12月24日
    000
  • 快看!10个值得收藏的CSS实用小技巧

    本篇文章给大家分享10个很棒的css使用技巧,让前端开发更轻松,快来收藏吧,希望对大家有所帮助! 我会为你带来 10 个很棒的 CSS 技巧,它们会让你作为开发人员更轻松,特别是如果你是初学者。(推荐学习:css视频教程) 1.如何在CSS中修复网页上的水平滚动 如果你在设置网页样式并且在底部看到水…

    2025年12月24日 好文分享
    000
  • 带你通过10个例子,了解FlexBox模型的所有属性

    本篇文章带大家深入了解一下flexbox(弹性盒子)模型,通过10个demo示例,来详细介绍弹性盒子模型的所有属性,希望对大家有所帮助! FlexBox(弹性盒子)模型,也就是我们常说的flex布局,现在flex布局已经是前端的主流布局方案,早就是前端必会的内容了,接下来我们一起来看一下弹性盒子模型…

    2025年12月24日 好文分享
    000
  • 总结分享CSS设计模式知识点

    本篇文章给大家带来了关于css设计模式的相关知识,其中包括oocss、bem、smacss、itcss以及acss的相关问题,希望对大家有帮助。 前言 传统的CSS书写风格是随意命名,堆叠样式,造成了混乱不堪的结果,你是否遇到庞大复杂的项目里,CSS代码难以维护的情况,你是否想要除了能够还原实物原型…

    2025年12月24日 好文分享
    000
  • 深入浅析Tailwind CSS(总结分享)

    本篇文章给大家带来了关于tailwind css的相关知识,tailwindcss 是一个css框架,和bootstrap、element ui、antd、bulma一样将一些css样式封装好,用来加速我们开发的一个工具,希望对大家有帮助。 (学习视频分享:css视频教程) 和其他的CSS框架有什么…

    2025年12月24日 好文分享
    000
  • 分享12个实用的 CSS 小技巧(快来收藏)

    本篇文章给大家分享12个有趣且实用的 css 小技巧,让前端开发更轻松,快来收藏吧,希望对大家有所帮助! (推荐学习:css视频教程) 1. 打字效果 代码实现: 有趣且实用的 CSS 小技巧 .wrapper { height: 100vh; display: flex; align-items:…

    2025年12月24日 好文分享
    000
  • 2022年你值得了解的几个CSS新特性(收藏学习)

    本篇文章给大家分享几个2022年值得期待的、不应该错过的 css 新功能,一起收藏学习吧! 对于CSS来说,2022年是非常值得期待的一年,大量的新功能即将出现,有些已经开始登录浏览器,有些可能会在2022年获得浏览器的广泛支持。下面就来看看2022年有哪些值得期待的 CSS 新功能吧!(推荐学习:…

    2025年12月24日
    000
  • 深入了解CSS动画新特性:@scroll-timeline

    在之前的文章《2022年你值得了解的几个css新特性(收藏学习)》中带大家简单介绍了几个css新特性,今天带大家深入了解其中的一个新特性(动画杀手锏):@scroll-timeline,希望对大家有所帮助! 在 CSS 规范 Scroll-linked Animations 中,推出了一个划时代的 …

    2025年12月24日 好文分享
    000
  • 如何利用CSS来美化滑动输入条?自定义样式方法浅析

    如何利用css来美化滑动输入条(input range)?下面本篇文章给大家介绍一下利用纯 css 自定义滑动输入条样式的方法,希望对大家有所帮助! 关于原生 input range 滑动输入条如何自定义样式一直都是我心里的一道坎,一般情况下,可以很轻易的美化到这个程度。(推荐学习:css视频教程)…

    2025年12月24日 好文分享
    000
  • css3怎么设置rotate旋转点

    在css3中,可以利用“transform-origin”属性设置rotate旋转元素时的旋转点,该属性用于更改转换元素的位置,可以改变旋转的中心点,语法为“transform-origin: x-axis y-axis z-axis;”。 本教程操作环境:windows10系统、CSS3&…

    2025年12月24日
    000
  • css3如何让盒子水平居中

    css3让盒子水平居中的方法:1、使用margin属性,给盒子元素添加“margin: 0 auto;”样式即可水平居中;2、利用flex弹性布局来实现水平居中;3、利用position和transform属性实现水平居中。 本教程操作环境:windows7系统、CSS3&&HTML…

    2025年12月24日 好文分享
    000
  • 如何将css文件设置为utf-8

    在css中,可以利用“@charset”规则来将字符编码设置为“utf-8”,该规则可以指定样式文件中使用的字符编码,语法为“@charset “UTF-8”;”;“@charset”规则必须是样式表中的第一个元素,前面不得有任何字符。 本教程操作环境:windows7系统、…

    2025年12月24日
    000
  • 手把手教你使用CSS制作动态饼图(附代码)

    css如何制作饼图?下面本篇文章手把手教你使用css制作动态饼图,希望对大家有所帮助! 饼图是常见的组件,可让你显示整体的各个部分,你可以将它们用于许多不同的场景。你会发现很多关于构建这样一个组件的文章,但它们通常要么依赖于 SVG,要么依赖于大量的 HTML 元素。在这篇文章中,我将向你展示如何使…

    2025年12月24日 好文分享
    000
  • 一文详解如何css实现动态弧形线条长短变化的Loading动画

    如何使用css 实现动态线条 loading 动画?下面本篇文章介绍一下使用css实现动态弧形线条长短变化的loading动画的3种方法,希望对大家有所帮助! 有群友问我,使用 CSS 如何实现如下 Loading 效果: 这是一个非常有意思的问题。 立即学习“前端免费学习笔记(深入)”; 我们知道…

    2025年12月24日 好文分享
    000
  • 实例详解之怎样使用css实现3D穿梭效果

    本篇文章给大家带来了怎样使用css来实现星际3d穿越效果的问题,希望对大家有帮助。 使用 CSS 3D 实现星际 3D 穿梭效果 这个技巧,我在 奇思妙想 CSS 3D 动画 | 仅使用 CSS 能制作出多惊艳的动画? 也有提及过,感兴趣的可以一并看看。 假设我们有这样一张图形: 立即学习“前端免费…

    2025年12月24日 好文分享
    000

发表回复

登录后才能评论
关注微信