这是我们v客学院基础班的童鞋都做完的一个超简单炫酷的特效demo,今天我来带大家用最快的速度和最简单的方法制作一个音乐抖动条,大家有兴趣不妨一起来试试~~~~~~~

做这个demo之前我们得有一些html+css3的基础,接下来我们先看看成品吧。。

其实实现这个效果非常的简单,首先我们来分析下抖动条实现的原理:每个抖动条都是一个单独的个体,要想它速度不一致的跳动起来,其实也就是在不同的时间段内使它达到同样的高度。

明白了这个原理,接下来我们就可以一步步的用代码来实现了!!

第一步:先排版布局。想要在网页中设置几个抖动条,我们就在页面body标签中写入几个标签,如下图所示,我这里使用的是18个i标签,h2标签在这里的目的是为了把整个抖动条包裹起来放置在页面正中间的位置。当然你们可以使用其他的一些标签来实现抖动条的布局,如a,span,li.....

第二步:设置抖动条的css样式。为h2设置宽度,高度及居中的属性,为i设置宽度,高度,浮动方式和左边距

第三步:定义一个跳动的动画move。动画分为3部分,分别是0%,50%,100%,对应动画开始执行,动画执行到一半,动画结束的3个节点,为3个节点设置不同宽度和背景颜色

当然我们为了兼容其他主流的浏览器,需要再加上一段代码:

第四步:也是最重要的一步,布局有了,动画也有了,紧接着就是为每个的抖动条单独设置不同的执行动画的时间。

首先我们来看如下图代码

这里的意思是为第1个音乐抖动条也就是第一个i标签设置抖动的动画:

move:是指动画的名称;

1s:指完成该动画所需要的时间

linear:规定动画的速度曲线为匀速

infinite:设置动画的执行次数为无限执行

那接下就好办了,我们只需要为每个不同的抖动条设置不同完成动画的时间就ok了。

代码如下:

注意:设置的动画move必须放置在每个抖动条执行动画样式的后面!

怎么样?超简单吧,当然我们这里做的只是一个粗略的效果,如果想要抖动条跳动的方向改变,大家可以自行添加position定位效果,或者在评论区跟我们留言,欢迎大家一起来讨论哦~~~~~~

(php开发,web前端,ui设计,vr开发专业培训机构,v客学院版权所有,转载请注明出路,谢谢!!!)

5分钟搞定一个网页特效----v客学院技术分享的更多相关文章

  1. 如何用css画一个彩虹---v客学院技术分享

    无意间看到了CSS radial-gradient() 函数实现了如下图的样式 仔细一看还真有点像灯光下的鸡蛋,O(∩_∩)O哈哈~ 今天我就来用radial-gradient()函数教大家画一个简单 ...

  2. HBuilder android 打包指南(V客学院技术分享)

    前提:确保配置文件(manifest.json)已配置完,没有异常. 打包选项如下: Android 包名 :在Android系统中是判断一个App的唯一标识,不同的App可以有同样的名字,但是它的包 ...

  3. 前端工程师在实现支付功能的时候能做些什么(V客学院技术分享)?

    现在最流行的两种支付微信支付和支付宝支付,在日常开发的过程中肯定离不开支付功能的开发,有很多人第一次接触时会有些措手不及. 一.业务逻辑 (电商平台为例子) 支付大部分用在电商平台,各种打赏,游戏充值 ...

  4. Echarts快速入门---------v客学院技术分享

    ECharts,一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等) ...

  5. 正则表达式的模式匹配----V客学院技术分享

    正则表达式是由一个字符序列形成的搜索模式. 你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容. 正则表达式可以是一个简单的字符,或一个更复杂的模式. 正则表达式可用于所有文本搜索和文本替换的 ...

  6. window对象之计时器--v客学院技术分享

    setTimeout()和setInterval()可以用来注册在指定的时间之后单次或者重复调用的函数.因为它们都是客户端JavaScript中重要的全局函数,所以定义为window对象的方法,但是作 ...

  7. Javascript闭包解析----------------v客学院技术分享

    跟java,php等编程语言一样,javascript也采用词法作用域,简单的来说就是函数的执行依赖于变量的作用域,这个作用域是在函数定义时决定的,而不是函数调用时决定的.为了实现这种词法作用域,还必 ...

  8. DIV+css排版问题技巧总结---v客学院技术分享

                DIV+css排版问题技巧总结 一.排版思路 1.从上到下,从左到右,从大到小. 2.首先确定排版分区,排除色块分布,然后再从简单的部分开始. 3.在某一块内将HTML部分写好 ...

  9. 数组去重汇总—v客学院技术分享

    上周基础班结束了数组的学习内容,这几天有时间整理了下几种比较常用的数组去重的方法供大家查阅!!!!! 话不多说,直接贴代码吧~~~~~~~ 欢迎大家指正,共同学习,一同进步!!! (php开发,web ...

随机推荐

  1. 利用NVIDIA NGC的TensorRT容器优化和加速人工智能推理

    利用NVIDIA NGC的TensorRT容器优化和加速人工智能推理 Optimizing and Accelerating AI Inference with the TensorRT Contai ...

  2. Java设计模式:23种设计模式全面解析(超级详细)以及在源码中的应用

    从网络上找的设计模式, 很全面,只要把UML类图看懂了, 照着类图将代码实现是很容易的事情. 步骤: 先看懂类图, 然后将代码实现, 之后再看文字 http://c.biancheng.net/des ...

  3. Netty 框架学习 —— EventLoop 和线程模型

    EventLoop 接口 Netty 是基于 Java NIO 的,因此 Channel 也有其生命周期,处理一个连接在其生命周期内发生的事件是所有网络框架的基本功能.通常来说,我们使用一个线程来处理 ...

  4. 谷歌:python速成课程笔记

    1.从用户那里获取信息 name = "Alex" print("hello" + name) 2.让python成为你的计算器 1 print(4+5) 2 ...

  5. 面试官:MySQL的可重复读级别能解决幻读问题吗?

    引言 之前在深入了解数据库理论的时候,了解到事务的不同隔离级别可能存在的问题.为了更好的理解所以在MySQL数据库中测试复现这些问题.关于脏读和不可重复读在相应的隔离级别下都很容易的复现了. 但是对于 ...

  6. k8s-nginx二进制报Illegal instruction (core dumped)

    1.环境 系统:CentOS 7.3 内核:x86 环境:虚拟机 2.问题 收到一个现场问题,k8s环境中nginx的pod都启动异常. #kubectl get pod |grep nginx ng ...

  7. go语言结构体内存对齐

    cpu要想从内存读取数据,需要通过地址总线,把地址传输给内存,内存准备好数据,输出到数据总线,交给cpu,如果地址总线只有8根,那这个地址就只有8位可以表示[0,255]256个地址,因为表示不了更多 ...

  8. cos中的文件结构(DF/EF/MF/FID/AID/SFI..)

    转载自:https://blog.csdn.net/Enjoy_endless/article/details/75108349 刚开始接触CPU卡的时候,对于各种文件.应用的定义容易模糊不清,通常不 ...

  9. Ubuntu安装部署Kafka

    Ubuntu安装部署Kafka 环境: Ubuntu 18.04.4 LTS ,JDK1.8,kafka_2.12-2.3.1 确保已经安装了JDK,JDK安装过程不再赘述.可参考文章xxxx 一.下 ...

  10. AD设计中地铜突然消失且无法选中删除的解决办法

    作者:struct_mooc 博客地址: https://www.cnblogs.com/structmooc/p/14984466.html   前几天在设计一块电路板的时候,已经全部设计完了!但是 ...