纯CSS发抖 

当您在 @keyframes 中创建动画时,请把它捆绑到某个选择器,否则不会产生动画效果。

通过规定至少以下两项 CSS3 动画属性,即可将动画绑定到选择器:

  • 规定动画的名称
  • 规定动画的时长

html

<section class="section carrot" style="position: absolute;">
<h1>抖动方式</h1>
<ul class="previews">
<li>
<i class="preview-item shake">
Bs
<span class="flip">
</span>
</i>
<p class="preview-desc">基本抖动</p>
</li> <li>
<i class="preview-item shake shake-constant">

<span class="flip"></span>
</i>
<p class="preview-desc">抖动不停</p>
</li>
</ul>
</section>

css

/*绕着图片那个点旋转*/
.shake { display: inline-block;
-webkit-transform-origin: center center;
-ms-transform-origin: center center;
transform-origin: center center;
}
/*基本抖动*/
.shake:hover { -webkit-animation-name: shake-base;
-ms-animation-name: shake-base;
animation-name: shake-base;
-webkit-animation-duration: 100ms;
-ms-animation-duration: 100ms;
animation-duration: 100ms;
-webkit-animation-iteration-count: infinite;
-ms-animation-iteration-count: infinite;
animation-iteration-count: infinite;
-webkit-animation-timing-function: ease-in-out;
-ms-animation-timing-function: ease-in-out;
animation-timing-function: ease-in-out;
-webkit-animation-delay: 0s;
-ms-animation-delay: 0s;
animation-delay: 0s;
-webkit-animation-play-state: running;
-ms-animation-play-state: running;
animation-play-state: running;
}
/*抖动不停*/
.shake.shake-constant {
-webkit-animation-name: shake-base;
-ms-animation-name: shake-base;
animation-name: shake-base;
-webkit-animation-duration: 100ms;
-ms-animation-duration: 100ms;
animation-duration: 100ms;
-webkit-animation-iteration-count: infinite;
-ms-animation-iteration-count: infinite;
animation-iteration-count: infinite;
-webkit-animation-timing-function: ease-in-out;
-ms-animation-timing-function: ease-in-out;
animation-timing-function: ease-in-out;
-webkit-animation-delay: 0s;
-ms-animation-delay: 0s;
animation-delay: 0s;
-webkit-animation-play-state: running;
-ms-animation-play-state: running;
animation-play-state: running;
}
/*keyframes 动画*/
@-webkit-keyframes shake-base {
0% { -webkit-transform: translate(0px, 0px) rotate(0deg); }
2% { -webkit-transform: translate(-0.5px, 1.5px) rotate(0.5deg); }
4% { -webkit-transform: translate(-0.5px, 1.5px) rotate(-0.5deg); }
6% { -webkit-transform: translate(-2.5px, -1.5px) rotate(0.5deg); }
8% { -webkit-transform: translate(-2.5px, -2.5px) rotate(-1.5deg); }
10% { -webkit-transform: translate(1.5px, 1.5px) rotate(-1.5deg); }
12% { -webkit-transform: translate(-2.5px, -0.5px) rotate(-0.5deg); }
14% { -webkit-transform: translate(1.5px, -2.5px) rotate(-0.5deg); }
16% { -webkit-transform: translate(0.5px, 1.5px) rotate(0.5deg); }
18% { -webkit-transform: translate(-2.5px, -0.5px) rotate(0.5deg); }
20% { -webkit-transform: translate(-0.5px, -0.5px) rotate(-1.5deg); }
22% { -webkit-transform: translate(-2.5px, -1.5px) rotate(-1.5deg); }
24% { -webkit-transform: translate(-1.5px, -2.5px) rotate(-1.5deg); }
26% { -webkit-transform: translate(0.5px, -0.5px) rotate(-1.5deg); }
28% { -webkit-transform: translate(-0.5px, -1.5px) rotate(-0.5deg); }
30% { -webkit-transform: translate(-2.5px, 1.5px) rotate(0.5deg); }
32% { -webkit-transform: translate(-2.5px, -2.5px) rotate(-0.5deg); }
34% { -webkit-transform: translate(-1.5px, 0.5px) rotate(-1.5deg); }
36% { -webkit-transform: translate(1.5px, -1.5px) rotate(-1.5deg); }
38% { -webkit-transform: translate(0.5px, -0.5px) rotate(-0.5deg); }
40% { -webkit-transform: translate(-0.5px, 0.5px) rotate(0.5deg); }
42% { -webkit-transform: translate(0.5px, -2.5px) rotate(-0.5deg); }
44% { -webkit-transform: translate(0.5px, -2.5px) rotate(-0.5deg); }
46% { -webkit-transform: translate(-1.5px, 1.5px) rotate(-1.5deg); }
48% { -webkit-transform: translate(0.5px, -2.5px) rotate(-0.5deg); }
50% { -webkit-transform: translate(-1.5px, -0.5px) rotate(-1.5deg); }
52% { -webkit-transform: translate(-2.5px, -0.5px) rotate(-1.5deg); }
54% { -webkit-transform: translate(1.5px, 0.5px) rotate(-1.5deg); }
56% { -webkit-transform: translate(0.5px, 0.5px) rotate(-1.5deg); }
58% { -webkit-transform: translate(0.5px, 1.5px) rotate(-0.5deg); }
60% { -webkit-transform: translate(-0.5px, -2.5px) rotate(-0.5deg); }
62% { -webkit-transform: translate(-2.5px, -1.5px) rotate(-0.5deg); }
64% { -webkit-transform: translate(-1.5px, 0.5px) rotate(0.5deg); }
66% { -webkit-transform: translate(0.5px, -0.5px) rotate(-1.5deg); }
68% { -webkit-transform: translate(-1.5px, -0.5px) rotate(-1.5deg); }
70% { -webkit-transform: translate(-0.5px, -2.5px) rotate(-1.5deg); }
72% { -webkit-transform: translate(-2.5px, -0.5px) rotate(-1.5deg); }
74% { -webkit-transform: translate(-2.5px, 0.5px) rotate(0.5deg); }
76% { -webkit-transform: translate(1.5px, -1.5px) rotate(-1.5deg); }
78% { -webkit-transform: translate(1.5px, -2.5px) rotate(0.5deg); }
80% { -webkit-transform: translate(-2.5px, -2.5px) rotate(-0.5deg); }
82% { -webkit-transform: translate(-2.5px, -1.5px) rotate(0.5deg); }
84% { -webkit-transform: translate(0.5px, -2.5px) rotate(-0.5deg); }
86% { -webkit-transform: translate(-2.5px, 0.5px) rotate(-0.5deg); }
88% { -webkit-transform: translate(-2.5px, -0.5px) rotate(-0.5deg); }
90% { -webkit-transform: translate(-1.5px, -1.5px) rotate(-1.5deg); }
92% { -webkit-transform: translate(-0.5px, -1.5px) rotate(-0.5deg); }
94% { -webkit-transform: translate(0.5px, -0.5px) rotate(-0.5deg); }
96% { -webkit-transform: translate(-2.5px, -2.5px) rotate(0.5deg); }
98% { -webkit-transform: translate(-0.5px, 1.5px) rotate(-0.5deg); } }


抖动方式

鼠标放上去 开始抖动

  • Bs

    基本抖动

  • 抖动不停

CSS发抖的更多相关文章

  1. 哇塞!HTML5 实现的雨滴效果 CSS发抖

    http://dreamsky.github.io/main/blog/rainy-day/ Rainy Day – 哇塞! HTML5 实现的雨滴效果 http://www.webhek.com/m ...

  2. Matplotlib数据可视化(3):文本与轴

      在一幅图表中,文本.坐标轴和图像的是信息传递的核心,对着三者的设置是作图这最为关心的内容,在上一篇博客中虽然列举了一些设置方法,但没有进行深入介绍,本文以围绕如何对文本和坐标轴进行设置展开(对图像 ...

  3. CSS的未来

    仅供参考 前言 完成<CSS核心技术与实战>这本书,已有一个多月了,而这篇文章原本是打算写在那本书里面的,但本章讲解的内容,毕竟属于CSS未来的范畴,而这一切都还不能够确定下来,所以这一章 ...

  4. 前端极易被误导的css选择器权重计算及css内联样式的妙用技巧

    记得大学时候,专业课的网页设计书籍里面讲过css选择器权重的计算:id是100,class是10,html标签是5等等,然后全部加起来的和进行比较... 我只想说:真是误人子弟,害人不浅! 最近,在前 ...

  5. 前端css兼容性与易混淆的点

    一.常用的骨灰级清除浮动 .clearfix:after { content: "."; display: block; height:; clear: both; visibil ...

  6. 理解CSS外边距margin

    前面的话   margin是盒模型几个属性中一个非常特殊的属性.简单举几个例子:只有margin不显示当前元素背景,只有margin可以设置为负值,margin和宽高支持auto,以及margin具有 ...

  7. 理解CSS视觉格式化

    前面的话   CSS视觉格式化这个词可能比较陌生,但说起盒模型可能就恍然大悟了.实际上,盒模型只是CSS视觉格式化的一部分.视觉格式化分为块级和行内两种处理方式.理解视觉格式化,可以确定得到的效果是应 ...

  8. 谈谈一些有趣的CSS题目(十二)-- 你该知道的字体 font-family

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  9. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库

    在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...

随机推荐

  1. (原+转)简明 Python 教程:总结

     简明 Python 教程 说明:本文只是对<简明Python教程>的一个总结.请搜索该书查看真正的教程. 第3章 最初的步骤 1. Python是大小写敏感的. 2. 在#符号右面的内容 ...

  2. c链表结点的删除和添加

    #include<stdio.h> #include<stdlib.h> typedef char datetype;/*定义新的数据类型名*/ typedef struct ...

  3. 分析java 嵌套类与内部类

    一.什么是嵌套类及内部类?     可以在一个类的内部定义另一个类,这种类称为嵌套类(nested classes),它有两种类型:静态嵌套类和非静态嵌套类.静态嵌套类使用很少,最重要的是非静态嵌套类 ...

  4. 如果设置Keil从C代码编译出来的hex文件地址从0x8000开始

    和MON51的设置一样,这样作:1.把Startup.a51拷贝到工程目录加入工程,修改125行的      CSEG    AT      0  为   CSEG    AT      0X8000 ...

  5. Sed 与 Linux 等价命令代码鉴赏(转)

    参考了     http://www.chinaunix.net/jh/24/307045.html                       sed     http://bbs.chinauni ...

  6. python 递归展开嵌套的序列(生成器用法)

    任何使用yield语句的函数都称为生成器.调用生成器函数将创建一个对象,该对象通过连续调用next()方法(在python3中是__next__())生成结果序列. next()调用使生成器函数一直运 ...

  7. COM组件开发实践(七)---多线程ActiveX控件和自动调整ActiveX控件大小(上)

    声明:本文代码基于CodeProject的文章<A Complete ActiveX Web Control Tutorial>修改而来,因此同样遵循Code Project Open L ...

  8. 2014.8.4我出的模拟赛【NTR酋长】

    NTR酋长 (ntr.pas/.c/.cpp) 黄巨大终于如愿以偿的进入了czy的后宫中……但是czy很生气……他要在黄巨大走到他面前的必经之路上放上几个NTR酋长来阻挡黄巨大. 众所周知,NTR酋长 ...

  9. HDOJ-1014 Uniform Generator

    http://acm.hdu.edu.cn/showproblem.php?pid=1014 给出式子seed(x+1) = [seed(x) + STEP] % MOD seed初始为0,给出STE ...

  10. JSONObject和JSONArray的简单使用(json-lib)

    一. jar包 commons-lang.jar commons-beanutils.jar commons-collections.jar commons-logging.jar ezmorph.j ...