原生组件案例 04:5 个 div 打造「音频波形动效」

先看效果:

🎧 深色背景下的霓虹音频柱

✨ 高度 + 颜色 + 位置同时变化的节奏感动画

🎵 5 根柱子错峰跳动,像真实均衡器

⚡ 纯 HTML + CSS,无一行 JS

🧠 技术亮点

这次依旧坚持"用最少的代码实现最顺滑的交互":

  • 一个容器类名.sound-wave --- 控制布局

  • 一个关键帧动画audio-wave --- 控制弹跳 + 变色

  • 几个延迟nth-child --- 做错位节奏

全部结构只有这样:

go 复制代码
<div class="sound-wave">
  <div></div><div></div><div></div><div></div><div></div>
</div>

🧩 关键 CSS

1️⃣ 布局 + 子元素尺寸

go 复制代码
.sound-wave {
  display: flex; gap: .5rem;
}
.sound-wave div {
  width: .6rem; height: .4rem;
  border-radius: .5rem;
  animation: audio-wave 2.2s infinite ease-in-out;
}

2️⃣ 动画:高度 + 位移 + 渐变色

go 复制代码
@keyframes audio-wave {
  0%,100% { height:6px; background:#ff8e3a; }
  25% { height:40px; transform:translateY(-5px); background:#ed509e; }
  50% { height:6px; background:#9c73f8; }
}

3️⃣ 错峰节奏(灵魂所在)

go 复制代码
.sound-wave div:nth-child(2){animation-delay:.2s}
.sound-wave div:nth-child(3){animation-delay:.4s}
.sound-wave div:nth-child(4){animation-delay:.6s}
.sound-wave div:nth-child(5){animation-delay:.8s}

📚 3 个核心知识点

  1. 一个关键帧控制多个视觉属性:高度、Y 位置、背景色

  2. 延迟错峰 :用 nth-child 做出"音频跳动"的节奏感

  3. 用最少结构实现可复用组件:5 根柱子即可形成连贯动效

🔗 完整代码(可直接复制)

👇 点击「原文链接」查看:

  • 完整 HTML / CSS(含深色主题)

  • 如何扩展成 ChatGPT 风格的「思考中动画」

  • 如何做成播放器 Loading / Buffering

  • 如何把颜色抽离成 CSS 变量,2 秒换主题

如果你正在做播放器、AI assistant、语音组件,这个「音频波形动效」直接就是开箱即用的小组件。

相关推荐
jbk33111 天前
批量给视频添加字幕,并实现多样式可选的功能
音视频
dualven_in_csdn1 天前
【视频优化研究】过程 记录
音视频
纽格立科技1 天前
2025全球DRM数字广播战略实施全景——印尼篇(地缘特征主导下的数字骨干网构建)
网络·科技·音视频·信息与通信·传媒
Black蜡笔小新2 天前
全域互联:EasyCVR如何为多区域视频监控融合治理提供技术支持
音视频
非凡ghost2 天前
MPC-QT视频播放器(基于Qt框架播放器)
开发语言·windows·qt·音视频·软件需求
REDcker2 天前
Android WebView 版本升级方案详解
android·音视频·实时音视频·webview·js·编解码
昨日之日20062 天前
LTX-2 - 一键生成音视频,创作更轻松 支持50系显卡 ComfyUI工作流 一键整合包
人工智能·音视频·视频
aqi002 天前
FFmpeg开发笔记(九十七)国产的开源视频剪辑工具AndroidVideoEditor
android·ffmpeg·音视频·直播·流媒体
喜欢吃豆2 天前
深度解析:FFmpeg 远程流式解复用原理与工程实践
人工智能·架构·ffmpeg·大模型·音视频·多模态
柳鲲鹏2 天前
OpenCV视频实时跟踪目标,多种算法,python版
opencv·算法·音视频