✨ 带有玻璃变形效果的发光迪斯科灯泡动画! ✨ 代码 HTML CSS 和 JAVASCRIPT

✨ 带有玻璃变形效果的发光迪斯科灯泡动画! ✨ 代码 html css 和 javascript

      Disco Bulb Animation      body {      margin: 0;      height: 100vh;      display: flex;      justify-content: center;      align-items: center;      background: linear-gradient(45deg, #000000, #111111);      font-family: Arial, sans-serif;    }    .container {      display: flex;      gap: 200px;    }    .wall {      display: flex;      flex-direction: column;      justify-content: space-between;      height: 300px;      padding: 15px;      border-radius: 10px;      background: rgba(96, 95, 95, 0.281);      backdrop-filter: blur(10px);      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);    }    .bulb {      width: 60px;      height: 60px;      background: rgba(255, 255, 255, 0.1);      border: 2px solid rgba(255, 255, 255, 0.2);      border-radius: 50%;      backdrop-filter: blur(10px);      box-shadow: 0 0 5px rgba(255, 255, 255, 0.2), inset 0 0 10px rgba(255, 255, 255, 0.1);      transition: box-shadow 0.3s, background-color 0.3s;    }    .bulb.glow {      animation: disco 0.2s infinite alternate;    }    @keyframes disco {      0% {        background-color: rgba(255, 0, 128, 0.8);        box-shadow: 0 0 40px 40px rgba(255, 0, 128, 0.8);      }      25% {        background-color: rgba(0, 255, 128, 0.8);        box-shadow: 0 0 30px 10px rgba(0, 255, 128, 0.8);      }      50% {        background-color: rgba(0, 128, 255, 0.8);        box-shadow: 0 0 30px 10px rgba(0, 128, 255, 0.8);      }      75% {        background-color: rgba(255, 255, 0, 0.8);        box-shadow: 0 0 30px 10px rgba(255, 255, 0, 0.8);      }      100% {        background-color: rgba(255, 128, 0, 0.8);        box-shadow: 0 0 30px 10px rgba(255, 128, 0, 0.8);      }    }    .start-button {      position: absolute;      bottom: 50px;      padding: 15px 30px;      background: #ff5722;      color: white;      border: none;      border-radius: 10px;      cursor: pointer;      font-size: 18px;      font-weight: bold;      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);      transition: background 0.3s;    }    .start-button:hover {      background: #ff784e;    }    
async function startDisco() { const leftBulbs = [ document.getElementById("left-bulb-1"), document.getElementById("left-bulb-2"), document.getElementById("left-bulb-3"), ]; const rightBulbs = [ document.getElementById("right-bulb-1"), document.getElementById("right-bulb-2"), document.getElementById("right-bulb-3"), ]; // Function to glow a bulb for 3 seconds async function glowBulb(bulb) { bulb.classList.add("glow"); await new Promise((resolve) => setTimeout(resolve, 3000)); bulb.classList.remove("glow"); } // Glow bulbs on the left wall for (let bulb of leftBulbs) { await glowBulb(bulb); } // Glow bulbs on the right wall for (let bulb of rightBulbs) { await glowBulb(bulb); } }

以上就是✨ 带有玻璃变形效果的发光迪斯科灯泡动画! ✨ 代码 HTML CSS 和 JAVASCRIPT的详细内容,更多请关注创想鸟其它相关文章!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月19日 21:41:50
下一篇 2025年12月19日 21:42:02

相关推荐

  • 解决“回到顶部”按钮在滚动时无法显示的问题

    本教程旨在解决网页中“回到顶部”按钮在滚动时无法正确显示的问题。通过分析常见的CSS布局(如body或html设置overflow: hidden,而内容滚动由特定容器控制)如何影响滚动事件的检测,我们将重点介绍使用window.scrollY来准确获取页面滚动位置的方法,并提供相应的JavaScr…

    2025年12月20日
    000
  • 在React应用中实现i18n:将翻译集成到外部数据文件

    本教程详细阐述了如何在React应用程序中,利用react-i18next库将国际化(i18n)功能有效集成到独立的JavaScript数据文件(如导航菜单配置)中。通过将数据文件中的字符串替换为翻译键,并在渲染组件中动态调用翻译函数,本指南提供了一种结构化且易于维护的解决方案,确保用户界面元素(如…

    2025年12月20日 好文分享
    000
  • js 如何压缩图片大小

    前端javascript压缩图片的核心原理是利用canvas api将图片绘制到canvas上,通过调整尺寸和导出质量来减小文件大小;2. 主要步骤包括:获取图片文件或img元素、使用filereader读取为data url、创建image对象并加载、创建canvas绘制缩放后的图片、通过tobl…

    2025年12月20日
    000
  • js 怎么实现页面跳转

    window.location.href 会将新页面添加到历史记录,允许用户点击“后退”按钮返回原页面;2. window.location.replace() 则用新url替换当前历史记录,用户无法通过“后退”按钮返回;3. 因此,登录成功、支付完成等不允许返回的场景应使用 replace(),而…

    2025年12月20日
    000
  • 事件循环中的“回调队列”是如何工作的?

    回调队列是存放异步回调函数的任务调度中心,异步操作完成后回调被加入队列等待执行;2. 事件循环先执行一个宏任务,再清空所有微任务(如promise),然后可能渲染ui,循环继续;3. 回调地狱因嵌套回调导致代码难维护,可用promise链、async/await、模块化避免;4. 调试可借助cons…

    2025年12月20日 好文分享
    000
  • js 如何生成条形码

    在javascript中生成条形码最直接高效的方式是使用第三方库如jsbarcode;2. 引入库后通过提供数据和配置即可快速生成条形码,避免手动计算像素或绘图;3. 选择库时需考量支持的条形码类型、api易用性、自定义能力、渲染性能及社区维护情况;4. 自定义样式可通过配置width、height…

    2025年12月20日
    000
  • React拖放应用中状态同步问题:理解组件隔离与解决方案

    在React拖放应用中,当尝试在handleDrop函数中访问由handleDragStart更新的组件状态(如selectedCard)时,常会遇到状态为null的问题。这主要是由于React组件状态的隔离性以及事件触发机制的差异造成的。本文将深入探讨这一问题的原因,并提供两种解决方案:直接传递数…

    2025年12月20日
    000
  • 如何为自定义滚动容器实现“回到顶部”按钮

    本教程旨在解决“回到顶部”按钮在特定网页布局中不显示的问题,特别是当body元素设置了overflow: hidden而实际滚动发生在自定义容器内时。文章将详细阐述如何正确识别负责滚动的元素,监听其滚动事件,并基于其滚动位置控制按钮的显示与隐藏,同时提供平滑滚动至顶部的实现方法,确保按钮功能在复杂布…

    2025年12月20日
    000
  • 解决“回到顶部”按钮在滚动时未显示的问题

    本文旨在解决网页中“回到顶部”按钮在滚动时无法正确显示的问题。通过分析常见的滚动事件监听误区,特别是当 body 元素被设置为 overflow: hidden 而实际滚动发生在其他容器时,文章将详细介绍如何使用 window.scrollY 或针对特定滚动容器的 scrollTop 属性来准确检测…

    2025年12月20日
    000
  • javascript如何实现数组协程处理

    javascript实现数组协程处理的核心是使用async/await和promise结合并发控制机制,1. 定义异步任务函数processitem用于处理数组元素;2. 实现processarray函数,通过running计数器和index索引控制并发数量,确保最多concurrency个任务同时…

    2025年12月20日 好文分享
    000
  • js如何操作canvas

    canvas是html中用于绘图的元素,通过javascript操作其2d上下文可实现绘图与动画。1. 获取canvas上下文:const canvas = document.getelementbyid(‘mycanvas’); const ctx = canvas.get…

    2025年12月20日 好文分享
    000
  • javascript闭包如何生成序列化函数

    闭包的核心价值在于为序列化函数提供私有且持久的环境以维护状态,如通过weakmap追踪已访问对象来处理循环引用;2. 利用闭包可实现循环引用检测,即在外部函数中创建weakmap记录遍历路径,内部序列化函数通过闭包访问该map进行重复对象判断;3. 自定义类型处理通过闭包捕获配置选项实现,如日期、正…

    2025年12月20日 好文分享
    000
  • javascript闭包怎样处理动画帧状态

    闭包通过封装动画状态实现状态持久化和实例隔离,防止意外修改的方法包括:1. 使用 const 和 let 明确变量可变性;2. 对对象状态使用 object.freeze() 冻结属性;3. 传递状态时采用深拷贝(如 json.parse(json.stringify()) 或 _.clonedee…

    2025年12月20日 好文分享
    000
  • js 怎样实现轮播图

    实现轮播图的核心是控制图片的显示与隐藏及动画流畅性,1. 通过html构建图片容器和控制按钮,2. 使用css的flex布局和transform配合transition实现图片滑动效果,3. 利用javascript控制图片索引(counter)并绑定前后切换逻辑,4. 添加自动轮播功能并通过mou…

    2025年12月20日 好文分享
    000
  • setTimeout和setImmediate在事件循环中的执行顺序是怎样的?

    1.settimeout和setimmediate的执行顺序取决于事件循环阶段。在主模块代码中,settimeout(fn, 0)通常先执行,因为事件循环从timers阶段开始,随后进入check阶段执行setimmediate;但在i/o回调中,setimmediate几乎总是优先,因为事件循环在…

    2025年12月20日 好文分享
    000
  • 解决MUI和Ant Design组件首次渲染时样式丢失的问题

    本文旨在解决在使用Webpack 5、Thread Loader以及Styled Components时,MUI和Ant Design等组件在首次渲染时出现样式丢失的问题。通过分析Thread Loader的工作机制及其对CSS变量的影响,提供了一种有效的解决方案,即移除Thread Loader对…

    2025年12月20日
    000
  • 解决Ant Design和Material-UI组件首次渲染时样式丢失的问题

    本文旨在解决在使用Webpack 5、Thread Loader以及Styled Components时,Ant Design (Antd) 和 Material-UI (MUI) 组件在首次渲染时出现样式丢失的问题。通过分析Webpack配置,定位到Thread Loader在CSS加载过程中的潜…

    2025年12月20日
    000
  • 解决React应用中MUI和Ant Design组件首次渲染时样式丢失的问题

    本文旨在解决React应用中使用MUI和Ant Design等组件库时,在首次渲染时出现组件样式丢失的问题。该问题通常与Webpack配置中的线程加载器(thread-loader)使用不当有关。我们将深入探讨问题原因,并提供详细的解决方案,帮助开发者避免此类问题,确保组件样式能够正确加载和渲染。 …

    2025年12月20日
    000
  • 如何避免 React Native FlatList 的重复渲染

    在 React Native 开发中,FlatList 是一个常用的组件,用于高效地渲染大型列表数据。然而,不当的使用方式可能会导致不必要的重复渲染,进而影响应用性能。其中一个常见的原因是在 useEffect 钩子中设置了不正确的依赖项,导致 API 请求陷入无限循环。 理解问题的根源 问题的核心…

    2025年12月20日
    000
  • React应用中Axios异步数据顺序渲染问题解析与优化

    本文旨在解决React应用中因Axios异步请求和状态更新机制不当导致的UI元素渲染顺序错乱问题。通过深入分析错误的异步处理模式,如在循环中进行非同步状态更新,并提出使用async/await语法结合Promise.all进行批量数据获取和一次性状态更新的优化方案。此方法能确保数据按预期顺序加载并渲…

    2025年12月20日
    000

发表回复

登录后才能评论
关注微信