css

一、CSS3 transition动画

transition可以实现动态效果,实际上是一定时间之内,一组css属性变换到另一组属性的动画展示过程。

属性参数:

1、transition-property 设置过渡的属性,比如:width height background-color
2、transition-duration 设置过渡的时间,比如:1s 500ms
3、transition-timing-function 设置过渡的运动方式

  • linear 匀速
  • ease 开始和结束慢速
  • ease-in 开始是慢速
  • ease-out 结束时慢速
  • ease-in-out 开始和结束时慢速
  • cubic-bezier(n,n,n,n)

4、transition-delay 设置动画的延迟
5、transition: property duration timing-function delay 同时设置四个属性

举例:

 
  1. <style type="text/css">

  2. .box{

  3. width:100px;

  4. height:100px;

  5. background-color:gold;

  6. transition:width 300ms ease,height 300ms ease 300ms,background-color 300ms ease 600ms;

  7. }

  8. .box:hover{

  9. width:300px;

  10. height:300px;

  11. background-color:red;

  12. }

  13. </style>

  14. ......

  15. <div class="box"></div>

     

二、CSS3 transform变换

       css3引入了一些可以对网页元素进行变换的属性,比如旋转,缩放,移动,或者沿着水平或者垂直方向扭曲(斜切变换)等等。这些的基础都是transform属性,transform属性有一项奇怪的特性,就是它们对于其周围的元素不会产生影响。换句话说,如果将一个元素旋转45度,它实际上是重叠在元素的上方,下方或者旁边。而不会移动其周围的内容。

属性参数:

1、translate(x,y) 设置盒子位移
2、scale(x,y) 设置盒子缩放
3、rotate(deg) 设置盒子旋转
4、skew(x-angle,y-angle) 设置盒子斜切
5、perspective 设置透视距离
6、transform-style flat | preserve-3d 设置盒子是否按3d空间显示
7、translateX、translateY、translateZ 设置三维移动
8、rotateX、rotateY、rotateZ 设置三维旋转
9、scaleX、scaleY、scaleZ 设置三维缩放
10、tranform-origin 设置变形的中心点
11、backface-visibility 设置盒子背面是否可见

举例:(翻面效果)

 
  1. <!DOCTYPE html>

  2. <html lang="en">

  3. <head>

  4. <meta charset="UTF-8">

  5. <title>翻面</title>

  6. <style type="text/css">

  7. .box{

  8. width:300px;

  9. height:272px;

  10. margin:50px auto 0;

  11. transform-style:preserve-3d;

  12. position:relative;

  13. }

  14. .box .pic{

  15. width:300px;

  16. height:272px;

  17. position:absolute;

  18. background-color:cyan;

  19. left:0;

  20. top:0;

  21. transform:perspective(800px) rotateY(0deg);

  22. backface-visibility:hidden;

  23. transition:all 500ms ease;

  24. }

  25. .box .back_info{

  26. width:300px;

  27. height:272px;

  28. text-align:center;

  29. line-height:272px;

  30. background-color:gold;

  31. position:absolute;

  32. left:0;

  33. top:0;

  34. transform:rotateY(180deg);

  35. backface-visibility:hidden;

  36. transition:all 500ms ease;

  37. }

  38. .box:hover .pic{

  39. transform:perspective(800px) rotateY(180deg);

  40. }

  41. .box:hover .back_info{

  42. transform:perspective(800px) rotateY(0deg);

  43. }

  44. </style>

  45. </head>

  46. <body>

  47. <div class="box">

  48. <div class="pic"><img src="images/location_bg.jpg"></div>

  49. <div class="back_info">背面文字说明</div>

  50. </div>

  51. </body>

  52. </html>

 

三、CSS3 animation动画

transition只能从一组css属性变成另一组css属性。animation则可以在多组属性之间变换。transition必须使用触发器触发,animation可以使用触发器,也可以在页面加载完成的时候自动触发。

属性参数:

1、@keyframes 定义关键帧动画
2、animation-name 动画名称
3、animation-duration 动画时间
4、animation-timing-function 动画曲线

  • linear 匀速
  • ease 开始和结束慢速
  • ease-in 开始是慢速
  • ease-out 结束时慢速
  • ease-in-out 开始和结束时慢速
  • steps 动画步数

5、animation-delay 动画延迟
6、animation-iteration-count 动画播放次数 n|infinite
7、animation-direction

  • normal 默认动画结束不返回
  • Alternate 动画结束后返回

8、animation-play-state 动画状态

  • paused 停止
  • running 运动

9、animation-fill-mode 动画前后的状态

  • none 不改变默认行为
  • forwards 当动画完成后,保持最后一个属性值(在最后一个关键帧中定义)
  • backwards 在 animation-delay 所指定的一段时间内,在动画显示之前,应用开始属性值(在第一个关键帧中定义)
  • both 向前和向后填充模式都被应用

10、animation:name duration timing-function delay iteration-count direction;同时设置多个属性

举例:(人物走路动画)

 
  1. <!DOCTYPE html>

  2. <html lang="en">

  3. <head>

  4. <meta charset="UTF-8">

  5. <title>走路动画</title>

  6. <style type="text/css">

  7. .box{

  8. width:120px;

  9. height:180px;

  10. border:1px solid #ccc;

  11. margin:50px auto 0;

  12. position:relative;

  13. overflow:hidden;

  14. }

  15.  
  16. .box img{

  17. display:block;

  18. width:960px;

  19. height:182px;

  20. position: absolute;

  21. left:0;

  22. top:0;

  23. animation:walking 1.0s steps(8) infinite;

  24. }

  25. @keyframes walking{

  26. from{

  27. left:0px;

  28. }

  29.  
  30. to{

  31. left:-960px;

  32. }

  33. }

  34. </style>

  35. </head>

  36. <body>

  37. <div class="box"><img src="images/walking.png"></div>

  38. </body>

  39. </html>

动画中使用的图片如下:

 

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值