一、css3过渡知识

    (一)、概述

        1、CSS3过渡是元素从一种样式逐渐改变为另一种的效果。

           2、实现过渡效果的两个要件:

          规定把效果添加到那个css属性上。

          规定效果时长

      定义动画的规则: 过渡transition  (作用) 将元素的某个属性从“一个值”在指定的时间内过渡到“另一个值”

     (二)、transform转化有以下几种:

translate()移动,根据左(X轴)和顶部(Y轴)位置给定的参数,从当前元素位置移动。

rotate()旋转,在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。

scale()缩放,该元素增加或减少的大小,取决于宽度(X轴)和高度(Y轴)的参数:

skew()倾斜,包含两个参数值,分别表示X轴和Y轴倾斜的角度,如果第二个参数为空,则默认为0,参数为负表示向相反方向倾斜。

matrix()混合,matrix 方法有六个参数,包含旋转,缩放,移动(平移)和倾斜功能。

每种转化都还有对应的3d版本

注意:闭合的内联元素不支持转化,过渡和动画:如<span>、<small>、<i>等。可以通过添加样式 display: inline-block 或 display: block 来转化成块级元素。

     (三)、transition属性

   语法 :   {transition: 属性名 持续时间 过渡方法}

transition-property     属性的名字(如果是一个属性就带有这个属性的名字;如果是多个属性,属性名之间用逗号隔开;如果是所有属性,用all表示即可。)表示对哪个属性进行变化。

  二、css3动画基础知识

        (一)、CSS3中的动画实现的是什么效果

        动画是使元素从一种样式逐渐变化为另一种样式的效果。可以改变任意多的样式任意多的次数。动画效果是通过animation属性来完成的。

          用百分比来规定变化发生的时间,或用关键词 "from" 和 "to",等同于 0% 和 100%。0% 是动画的开始,100% 是动画的完成。

        为了得到最佳的浏览器支持,应该始终定义 0% 和 100% 选择器。

        实现动画效果两要件:

1、首先要定义一个动画  ,定义一个@keyframes  规则(关键帧)

2、调用动画    动画定义好之后,使用animation 属性调用动画

 (二)、animation属性设置动画效果

        • @keyframes 规定动画
        • animation-name  规定@keyframes 动画名称
        • animation-duration  规定一个动画完成的周期所花费的秒或毫秒。默认值为0。
        • animation-timing-function 规定动画的速度曲线。默认值为ease
        • animation-delay 动画开始前等待的时间。取值可为负(-2s 动画跳过 2 秒进入动画周期)
        • animation-iteration-count  规定动画播放的次数。默认值为1
        • animation-direction 规定动画是否在下一周期逆向地播放。默认值是normal
        • animation-play-state  规定动画是否正在运行或暂停。默认值是running
        • animation-fill-mode  规定对象动画时间之外的状态
      • linear    匀速(线型过渡)
      • ease      先慢后快再慢
      • ease-in  先慢后快
      • ease-out 先快后慢
      • ease-in-out  开头慢结尾慢,中间快

动画制作过程

1.通过@keyframes规则创建动画

/*创建动画,字体颜色由红变蓝 */
@keyframes changeColor {
from { color: red; }
to { color: blue; }
}

2.元素绑定动画

span {
display: inline-block; /*内联元素要转成block元素 */
animation: changeColor 1s linear; /*绑定动画,并设置动画时间和执行曲线 */
}

3.动画还可以使用百分比来更加精细的控制动画流程:

@keyframes changeColor {
0% {color: red;}
25% {color: yellow;}
50% {color: green;}
75% {color: pickle;}
100% {color: blue;}
}

最新文章

  1. .NET应用架构设计—面向查询的领域驱动设计实践(调整传统三层架构,外加维护型的业务开关)
  2. C#开发微信公众平台(附Demo)
  3. phpcms V9 首页模板文件解析
  4. ps中如何用抽出功能扣取头发
  5. [C#]Main(String[] args)参数输入问题
  6. [转] linux中巧用ctrl-z后台运行程序
  7. 4.0之后的hibernate获取sessionFactory
  8. python流程控制语句 ifelse - 2
  9. oracle数据库使用plsql(64位)时出现的问题
  10. Qt Creator 代码自动补全设置
  11. Easyui 异步树直接所有展开
  12. java基础之路(二)上
  13. Einbahnstrasse
  14. Python中的三种数据结构
  15. vmware安装centos7
  16. Linux基础命令---top显示进程信息
  17. SpringBoot之文件上传
  18. JSP(8)—EL案例和JSTL案例
  19. 转: spring静态注入
  20. js 乘法 4.39*100 出现值不对问题解决

热门文章

  1. 面试官:小伙子,你能给我说一下HashMap的实现原理吗?
  2. 阿里面试官:小伙子,给我说一下Spring 和 Spring Boot 的区别吧
  3. Android呼吸灯添加
  4. 使用Mac清理工具CleanMyMac对Mac电脑进行维护
  5. Jmeter如何监测被测服务器资源
  6. Yali 2019-8-15 test solution
  7. Java基础教程——File类、Paths类、Files类
  8. Linux 系统故障排查,这里看过来
  9. LaTeX中的数学公式的初步使用
  10. 新手上路之JDK8的下载、安装与PATH环境变量的配置