模拟音频播放的css样式

play_bar.png

如果做出如上图中左边的那个小喇叭呢,其实只需要简单布局和css样式即可。

html

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
        <style>
            html {
                font-size:100px;
            }
            /*语音条*/
            /*语音三条杠*/
            /* 父级元素必须为speech_bar */
            .speech_bar{
                position:relative;
            }
            .speaker_wrapper {
                position: absolute;
                top: 50%;
                left: .06rem;
                width: .2rem;
                height: .2rem;
                margin-top: -.1rem;
            }
            .speaker1 {
                width: .2rem;
                height: .2rem;
                border: 1px solid;   
                border-radius: 50%;
                opacity: 1;
            }
            .speaker2 {
                position: absolute;
                top: 50%;
                left: 50%;
                width: .14rem;
                height: .14rem;
                margin: -.07rem 0 0 -.07rem;
                border: 1px solid;
                border-radius: 50%;
                opacity: 1;
            }
            .speaker3 {
                position: absolute;
                top: 50%;
                left: 50%;
                width: 6px;
                height: 6px;
                margin: -3px 0 0 -3px;
                border: 1px solid;    
                border-radius: 50%;
            }
            .speech_bar .speaker1,.speech_bar .speaker2,.speech_bar .speaker3{
                border-color: transparent #fff transparent transparent;
            }
            .pressed .speaker1{
                -webkit-animation: speaker1 1.2s ease-in-out infinite;
                 /*-webkit-animation-play-state: paused;*/ 
                }
            .pressed .speaker2 {
                -webkit-animation: speaker2 1.2s ease-in-out infinite;
                /* -webkit-animation-play-state: paused; */
               }
               @-webkit-keyframes speaker1{
                0%{
                    opacity: 0; 
                }
                70%,100%{
                    opacity: 1;
                }
            }
            @-webkit-keyframes speaker2{
                0%{
                    opacity: 0; 
                }
                20%,100%{
                    opacity: 1;
                }
            }
            .play_bar{
                width:1.85rem;height:0.4rem;background:#2eb3e8;border-radius:8px;line-height: 0.4rem;text-align: center;color:#fff;font-size: 0.16rem;
            }
        </style>
    </head>
    <body>
        <div class="play_bar">
            <div class="speech_bar pressed"><!--点击添加pressed喇叭即可波动  不想波动删除即可-->
                <p>免费试听<audio></audio></p>
                <div class="speaker_wrapper">
                    <div class="speaker1"></div>
                    <div class="speaker2"></div>
                    <div class="speaker3"></div>
                </div>
            </div>
        </div>
    </body>
</html>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,242评论 25 708
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,796评论 1 92
  • 简介网络浏览器很可能是使用最广的软件。在这篇入门文章中,我将会介绍它们的幕后工作原理。我们会了解到,从您在地址栏输...
    wengjq阅读 2,071评论 2 15
  • 什么是内存管理? 内存管理是程序设计中常见的资源管理(resource management)的一部分。每个计算机...
    UncleFool阅读 471评论 0 2
  • 不是雪花那样晶莹的外表 没有蝴蝶那样美丽的翅膀 快乐时随风荡漾 忧伤时望着阳光 拖着小小的梦想 一出生就注定了漂泊...
    Pillar君阅读 1,174评论 5 8