css3特效(上下左右晃动效果)

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
				 
.animated {
  animation-duration: 2s; /*动画时间*/
  animation-fill-mode: both; /*播放后的状态*/
}
 
.animated {
  animation-iteration-count: infinite; /*动作循环的次数:infinite 无限循环*/
}
 
.animated {
  animation-duration: 2s; /*动画时间*/
}
 
.up,.around {
  background: #2D97DB;
  width: 90%;
  height: 90%;
  padding: 20px;
  margin: 20px auto;
  font-family: "微软雅黑";
  font-size: 40px;
  color: white;
  text-align: center;
  line-height: 90%;
}
.around{
	background-color: #44a036;
}
 
.up{
  animation-name:upAnimation; /*动画的名称*/
  transform-origin: center bottom; /*设置动画旋转元素的基点为*/
  cursor: pointer;
}
.around{
  animation-name:aroundAnimation; /*动画的名称*/
  transform-origin: center bottom; /*设置动画旋转元素的基点为*/
  cursor: pointer;
}
 
@keyframes upAnimation{
  0%,
  100%,
  20%,
  50%,
  80% {
  transition-timing-function: cubic-bezier(0.215,.61,.355,1); 
  transform: translate3d(0,0,0);
  }
  40%,
  43%{
  transition-timing-function: cubic-bezier(0.755,0.50,0.855,0.060);
  transform: translate3d(0,-30px,0);
  }
  70%{
  transition-timing-function: cubic-bezier(0.755,0.050,0.855,0.060);
  transform: translate3d(0,-15px,0);
  }
  90%{
  transform: translate3d(0,-4px,0);
  }
}

@keyframes aroundAnimation{
  0%,
  100%,
  20%,
  50%,
  80% {
  transition-timing-function: cubic-bezier(0.215,.61,.355,1); 
  transform: translate3d(0,0,0);
  }
  40%,
  43%{
  transition-timing-function: cubic-bezier(0.755,0.50,0.855,0.060);
  transform: translate3d(-20px,0,,0);
  }
  70%{
  transition-timing-function: cubic-bezier(0.755,0.050,0.855,0.060);
  transform: translate3d(-10px,0px,0);
  }
  90%{
  transform: translate3d(20px,0,0);
  }
}
	</style>
</head>
<body>
	<div class="up animated">上下晃动</div>
	<div class="around animated">左右晃动</div>
</body>
</html>

2.把代码加到style.css(模板的主css里面):

/**图片抖动**/

img:hover{-webkit-animation: tada 1s .2s ease both;-moz-animation: tada 1s .2s ease both;}

@-webkit-keyframes tada{0%{-webkit-transform:scale(1);}

10%, 20%{-webkit-transform:scale(0.9) rotate(-3deg);}

30%, 50%, 70%, 90%{-webkit-transform:scale(1.1) rotate(3deg);}

40%, 60%, 80%{-webkit-transform:scale(1.1) rotate(-3deg);}

100%{-webkit-transform:scale(1) rotate(0);}}

@-moz-keyframes tada{0%{-moz-transform:scale(1);}

10%, 20%{-moz-transform:scale(0.9) rotate(-3deg);}

30%, 50%, 70%, 90%{-moz-transform:scale(1.1) rotate(3deg);}

40%, 60%, 80%{-moz-transform:scale(1.1) rotate(-3deg);}

100%{-moz-transform:scale(1) rotate(0);}}

@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);

opacity:0;}

40%{-webkit-transform:perspective(400px) rotateY(-10deg);}

70%{-webkit-transform:perspective(400px) rotateY(10deg);}

100%{-webkit-transform:perspective(400px) rotateY(0deg);

opacity:1;}}

@-moz-keyframes flipInY{0%{-moz-transform:perspective(400px) rotateY(90deg);

opacity:0;}

40%{-moz-transform:perspective(400px) rotateY(-10deg);}

70%{-moz-transform:perspective(400px) rotateY(10deg);}

100%{-moz-transform:perspective(400px) rotateY(0deg);

opacity:1;}}

不喜欢全站的图片都这样抖动,只希望部分的就可以。 那么我给出一个方案,给需要抖动的img前面加个div 给div加class属性=dimg 然后css代码如下:

/**图片抖动**/

.dimg img:hover{-webkit-animation: tada 1s .2s ease both;-moz-animation: tada 1s .2s ease both;}

@-webkit-keyframes tada{0%{-webkit-transform:scale(1);}

10%, 20%{-webkit-transform:scale(0.9) rotate(-3deg);}

30%, 50%, 70%, 90%{-webkit-transform:scale(1.1) rotate(3deg);}

40%, 60%, 80%{-webkit-transform:scale(1.1) rotate(-3deg);}

100%{-webkit-transform:scale(1) rotate(0);}}

@-moz-keyframes tada{0%{-moz-transform:scale(1);}

10%, 20%{-moz-transform:scale(0.9) rotate(-3deg);}

30%, 50%, 70%, 90%{-moz-transform:scale(1.1) rotate(3deg);}

40%, 60%, 80%{-moz-transform:scale(1.1) rotate(-3deg);}

100%{-moz-transform:scale(1) rotate(0);}}

@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);

opacity:0;}

40%{-webkit-transform:perspective(400px) rotateY(-10deg);}

70%{-webkit-transform:perspective(400px) rotateY(10deg);}

100%{-webkit-transform:perspective(400px) rotateY(0deg);

opacity:1;}}

@-moz-keyframes flipInY{0%{-moz-transform:perspective(400px) rotateY(90deg);

opacity:0;}

40%{-moz-transform:perspective(400px) rotateY(-10deg);}

70%{-moz-transform:perspective(400px) rotateY(10deg);}

100%{-moz-transform:perspective(400px) rotateY(0deg);

opacity:1;}}
© 版权声明
THE END
喜欢就支持以下吧
点赞2赞赏 分享
吐槽 共1条

请登录后发表评论

    • xxlog的头像-xxlogsvipxxlogLV6作者1