纯css实现音符跳动效果

如图:

image


代码:

index.html

<span
  className={styles.voice}>
  <i className={styles.first} />
  <i className={styles.second} />
  <i className={styles.three} />
  <i className={styles.four} />
</span>

style.less

.voice {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    height: 100%;

    i {
        display: inline-block;
        border-left: 2px solid #10ea14;
        margin: 0 1px;
        position: relative;

        &.first {
            height: 8px;
            animation: first 0.5s linear 0s infinite alternate;
        }

        &.second {
            height: 4px;
            animation: second 1s linear 0s infinite alternate;
        }

        &.three {
            height: 6px;
            animation: three 0.8s linear 0s infinite alternate;
        }

        &.four {
            height: 12px;
            animation: four 0.6s linear 0s infinite alternate;
        }
    }

    @keyframes first {
        0% {
            height: 4px;
        }

        50% {
            height: 8px;
        }

        100% {
            height: 10px;
        }
    }

    @keyframes second {
        0% {
            height: 12px;
        }

        50% {
            height: 9px;
        }

        100% {
            height: 7px;
        }
    }

    @keyframes three {
        0% {
            height: 14px;
        }

        50% {
            height: 12px;
        }

        100% {
            height: 10px;
        }
    }

    @keyframes four {
        0% {
            height: 10px;
        }

        50% {
            height: 8px;
        }

        100% {
            height: 5px;
        }
    }
}
posted @   Mr.曹  阅读(2256)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示