原生组件案例 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、语音组件,这个「音频波形动效」直接就是开箱即用的小组件。

相关推荐
小鹿研究点东西10 小时前
AI直播工具实操:从直播录制、AI剪辑去重到直播伴侣开播完整流程
人工智能·自动化·音视频·语音识别
wen_zhufeng11 小时前
信号与系统:采样、量化与信号连续/离散答疑文档
音视频
byte轻骑兵12 小时前
【LE Audio】CAS精讲[1]: 基础约定定乾坤,读懂音频协同的通用规则
音视频·蓝牙耳机·蓝牙音箱·le audio·低功耗音频
肖爱Kun14 小时前
STL标准模块库操作
开发语言·音视频
2601_9583529014 小时前
双麦 DSP 音频拾音模块 A-68:多场景远场语音交互的声学解决方案
嵌入式硬件·音视频·降噪·回音消除·音频处理模块
2601_9583529015 小时前
对讲系统音频优化实战:解决回声、啸叫、环境噪音与远场拾音难题
嵌入式硬件·音视频·语音识别·降噪处理·音频处理模块·硬件开发模块
南山有乔木78916 小时前
下载的ncm歌曲不能播放怎么办?NCM在线转MP3怎么操作?手机电脑转换教程参考
音视频
开开心心就好17 小时前
解决截图被拦截黑屏问题的免费小工具
安全·智能手机·flink·kafka·pdf·音视频·1024程序员节
2601_9583529017 小时前
双麦 DSP 音频模块实战:一文梳理 A-68 在全行业场景的声学解决方案与落地要点
前端·嵌入式硬件·音视频·语音识别·降噪消回音·音频处理模块
Deitymoon17 小时前
RV1126——OSD模块和SDL_TTF结合输出H264文件
计算机视觉·音视频·rv1126·osd