解析css3 shake 抖动样式

前端时间做项目发现一抖动按钮挺吸引眼球的,研究了下实现原理,在此和大家分享下:

CSS Shake是一个使用CSS3实现的动画样式,使用SASS编写,利用它我们可以实现多种不同样式的抖动效果(如下面的GIF图像)。这是一个很微小的动画,但使用得当也是挺不错的,比如用在广告、图像、按钮上,这样可以用来吸引用户眼球从而促使去点击它。

其中有前辈为大家编写好了csshake.css ,大家可以去参考下:http://www.webhek.com/misc/css-shake

Csshake有9个抖动样式,三个状态,如鼠标经过拉动、无限抖动、鼠标悬停拉动,下面一起来看看介绍:

使用教程

首先引入css shake的样式表文件。

<link type="text/css" href="csshake.css">

给你的DOM元素添加shake class样式

<div class="shake"></div>

添加抖动样式,一共9种,也可以看DEMO对应添加即可

<div class="shake shake-hard"></div>
<div class="shake shake-slow"></div>
<div class="shake shake-little"></div>
<div class="shake shake-horizontal"></div>
<div class="shake shake.vertical"></div>
<div class="shake shake-rotate"></div>
<div class="shake shake-opacity"></div>
<div class="shake shake-crazy"></div>

另外还能通过 .freeze, .shake-constant & .hover-stop 来控制状态,具体自己试下哦!

接下来是我自己编写的一个鼠标放上停止抖动的小实验:<!doctype html><html>    <head>        <meta charset="utf-8">        <title>shake study</title>        <style type="text/css">        .box{width: 200px;height: 100px;background-color: #ccc;margin:30px auto;}        .shake{            -webkit-animation-name: shake_box;            -ms-animation-name: shake_box;            animation-name: shake_box;            -webkit-animation-duration: 100ms;            -ms-animation-duration: 100ms;            animation-duration: 100ms;            -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:hover{            -webkit-animation-iteration-count: infinite;            -ms-animation-iteration-count: infinite;            animation-iteration-count: infinite;            /*-webkit-animation-play-state: paused;            -ms-animation-play-state: paused;            animation-play-state: paused;*/        }        @keyframes shake_box{            0% {transform: translate(0px, 0px) rotate(0deg)}            20% {transform: translate(1.5px, -2.5px) rotate(-1.5deg)}            40% {transform: translate(-2.5px, 0.5px) rotate(-0.5deg)}        }        @-ms-keyframes shake_box{            0% {-ms-transform: translate(0px, 0px) rotate(0deg)}            20% {-ms-transform: translate(1.5px, -2.5px) rotate(-1.5deg)}            40% {transform: translate(-2.5px, 0.5px) rotate(-0.5deg)}        }        </style>    </head>    <body>        <div class="box shake"></div>    </body></html>

最后,欢迎大家指出我的不足之处哟
时间: 2024-11-07 13:50:33

解析css3 shake 抖动样式的相关文章

炫酷的CSS3抖动样式:CSS Shake

CSS Shake是一个使用CSS3实现的动画样式,使用SASS编写,利用它我们可以实现多种不同样式的抖动效果(如下面的GIF图像): 炫酷的CSS3抖动样式:CSS Shake 这是一个很微小的动画,但使用得当也是挺不错的,比如用在广告.图像.按钮上,这样可以用来吸引用户眼球从而促使去点击它. 这个Csshake有9个抖动样式,三个状态,如鼠标经过拉动.无限抖动.鼠标悬停拉动. CSS Shake 使用方法: 首先引入css shake的样式表文件.css3按钮:?http://www.hui

解决CSS3多列样式column-width布局时内容被截断、错乱

一.问题 使用CSS3的column-width: auto | <length>属性时,出现排列的内容被截断,出现错位的现象. 二.原因 需要为图片容器设置高度,不然会崩掉. 三.解决方法 给需要分列的容器加上height:100%;overflow: auto;. 解决CSS3多列样式column-width布局时内容被截断.错乱

html5标签css3的常用样式

<meta name=''> name:有如下6个值:application-name:文档名或者应用名,整个文档只能包含一个值.author:文档作者description:文档描述generator:生成文档的程序.keywords:网页关键字,用英文逗号分隔. <a href="http://www.baidu.com">百度一下</a> href:路径 <img src="../img/a.jpg" alt=&quo

纯css3艺术文字样式效果代码

效果:http://hovertree.com/texiao/css3/1/ 本效果主要使用text-shadow实现.参考:http://hovertree.com/h/bjaf/css3_text_effect.htm 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>超炫CSS3文字特效集锦DEMO演示 - 何问起</title>

css3之背景样式

css3中增加的背景相关的样式十分好用 background-origin  : 决定了背景在盒模型中的初始位置,提供了三个值,border,padding和content; background-clip: 决定了边框是否覆盖住背景,提供了两个值,border和padding; background-size: 可指定背景的大小,以像素或百分比显示.其中值还有auto-不改变原始图片大小,cover-将图片背景等比缩放填满整个容器, contain-背景图片等比缩放至某一边紧贴容器边缘为止.

CSS3自定义滚动条样式 之 -webkit-scrollbar

有没有觉得浏览器自带的原始滚动条很不美观,同时也有看到很多网站的自定义滚动条显得高端,就连chrome32.0开发板都抛弃了原始的滚动条,美观多了.那webkit浏览器是如何自定义滚动条的呢? 前言 webkit支持拥有overflow属性的区域,列表框,下拉菜单,textarea的滚动条自定义样式,所以用处还是挺大的.当然,兼容所有浏览器的滚动条样式目前是不存在的. 演示 来看看这2个滚动条demo:demo1(图片版).demo2(纯CSS3版) 滚动条组成 ::-webkit-scroll

CSS3自定义滚动条样式 -webkit-scrollbar

http://blog.csdn.net/hanshileiai/article/details/40398177#t1 有没有觉得浏览器自带的原始滚动条很不美观,同时也有看到很多网站的自定义滚动条显得高端,就连chrome32.0开发板都抛弃了原始的滚动条,美观多了.那webkit浏览器是如何自定义滚动条的呢? 前言 webkit支持拥有overflow属性的区域,列表框,下拉菜单,textarea的滚动条自定义样式,所以用处还是挺大的.当然,兼容所有浏览器的滚动条样式目前是不存在的. 演示

css3动画 抖动效果

html结构: <div class="top"> <a href="#"> <div> <img src="images/top1.jpg" width="80" height="79" class="to_top" /> </div> </a> <a href="index.html"&

CSS3多栏样式布局

看书的时候,遇到了CSS3一个新的多栏布局样式属性,测试了一下,贴段代码出来: 目前这个属性还是需要带上浏览器内核的私有前缀: 先看html代码: 1 <BODY> 2 <div class='main'> 3 <p>My father was a self-taught mandolin player. He was one of the best string instrument players in our town. He could not read mus