Transition过渡

transition-property 过渡属性 all|[attr]

transition-duration 过渡时间

transition-delay 延迟时间

transition-timing-function 运动类型

  • ease:(逐渐变慢)默认值
  • linear:(匀速)
  • ease-in:(加速)
  • ease-out:(减速)
  • ease-in-out:(先加速后减速)
  • cubic-bezier 贝塞尔曲线( x1, y1, x2, y2 )贝塞尔曲线

webkit内核下:

ele.addEventListener('webkitTransitionEnd',function(){},false);

标准浏览器下:

ele.addEventListener(‘transitionend',function(){},false)

transition 执行次数问题

2D变换

transform

rotate() 旋转函数

  • deg 度数
  • Transform-origin 旋转的基点

skew() 倾斜函数

  • skewX()
  • skewY()

scale() 缩放函数 默认值是1

  • scaleX()
  • scaleY()

translate() 位移函数

  • translateX()
  • translateY()

animation声明关键帧动画

关键帧---@keyframes

  • 类似于flash
  • 定义动画在每个阶段的样式,即帧动画
  • 关键帧的时间单位
  • 数字:0%、25%、100%等(设置某个时间段内的任意时间点的样式)
  • 字符:from(0%)、to(100%)
  • 格式
@keyframes 动画名称
{
动画状态
}

animation调用动画

必要属性

  • animation-name 动画名称(关键帧名称)
  • animation-duration 动画执行时间

    可选属性

    animation-timing-function
  • linear 匀速
  • ease 缓存
  • ease-in 加速
  • ease-out 减速
  • ease-in-out 先加速后减速
  • cubic-bezier(number, number, number, number):特定的贝塞尔曲线类型,4个数值需在[0, 1]区间内

可选属性

  • animation-delay 动画延迟
  • animation-iteration-count 重复次数
  • animation-direction 动画运行的方向 normal | reverse | alternate | alternate-reverse
  • animation-play-state 动画状态 running | paused
  • animation-fill-mode 动画结束后的状态 none | forwards| backwards | both

3D变换

transform-style : flat | preserve-3d (3D空间展示)

perspective 透视效果

transform:perspective(800px) 直接作用在子元素上

perspective-origin 透视点位置

transform 新增函数

  • translate3d( tx , ty, tz )

    translateX() translateY() translateZ()
  • rotate3d( rx , ry , rz,a)

    rotateX() rotateY() rotateZ()
  • scale3d( sx , sy , sz)

    scaleX() scaleY() scaleZ()

动画进阶

【timing-function  steps (<number_of_steps>,`<direction>`)】

steps()是一个timing function,允许我们将动画或者过渡分割成段,而不是从一种状态持续到另一种状态的过渡。这个函数有两个参数;

第一个参数是一个正值,指定我们希望动画分割的段数;

第二个参数定义了这个要点 在我们的@keyframes中申明的动作将会发生的关键,这个值是可选的,在没有传递参数时,默认为”end”;

【”start”】表示一个左--持续函数,在动画开始时,动画的第一段将会马上完成。以左侧端点为起点,立即跳到第一个step的结尾处。它会立即跳到第一段的结束并且保持这样的状态直到第一步的持续时间结束。后面的每一帧都将按照此模式来完成动画;

【”end”】表示一个右--持续函数。动画执行时,在每一帧里,动画保持当前状态直到这一段的持续时间完成,才会跳到下一步的起点,后面的每一帧都按照这个模式来进行,在最后一帧的起点,等到这一帧的持续时间结束,整个动画的执行也已经结束,执行动画的元素来不及跳到这一帧的终点,直接回到了整个动画起点,开始了第二次动画。每个选择本质上从一个不同的面移动这个元素并且将产生一个不同的位置在这个相同的动画里;

【Sprites 精灵动画】

原理:使用一张含有多帧静态画面的图片,通过切换 background-position 使其变为连续的动画

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box1 {
width: 100px;
height: 100px;
line-height:100px;
text-align: center;
margin:20px 0;
font-size:20px;
color:#fff;
-webkit-animation: animation1 6s steps(3, start) infinite;
}
.box2 {
width: 100px;
height: 100px;
line-height:100px;
text-align: center;
margin:20px 0;
font-size:20px;
color:#fff;
-webkit-animation: animation2 6s steps(3, end) infinite;
}
@-webkit-keyframes animation1{
from {
background-color: red;
}
to {
background-color: blue;
}
}
@keyframes animation1{
from {
background-color: red;
}
to {
background-color: blue;
}
}
@-webkit-keyframes animation2{
from {
background-color: red;
}
to {
background-color: blue;
}
}
@keyframes animation2{
from {
background-color: red;
}
to {
background-color: blue;
}
}
</style>
<body>
<div class="box1">start</div>
<div class="box2">end</div>
</body>
</html>

CSS3基础知识核心动画(二)的更多相关文章

  1. CSS3 基础知识

    CSS3 基础知识1.边框    1.1 圆角  border-radius:5px 0 0 5px;    1.2 阴影  box-shadow:2px 3px 4px 5px rgba(0,0,0 ...

  2. CSS3 基础知识[转载minsong的博客]

    CSS3 基础知识1.边框    1.1 圆角  border-radius:5px 0 0 5px;    1.2 阴影  box-shadow:2px 3px 4px 5px rgba(0,0,0 ...

  3. [SQL] SQL 基础知识梳理(二) - 查询基础

    SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...

  4. Go基础知识梳理(二)

    Go基础知识梳理(二) 简单函数的定义 //有参数有返回值 func sum(a int, b int) int { return a + b } //无返回值 func sum(a int, b i ...

  5. java基础知识一览(二)

    一.java基础知识 1.一个文件中只能有一个public的类,因为他的类名要求和文件名相同. 2.classpath变量可以设置其它目录下的类. 例如:类文件所在目录是:F:\Javajdk,那么没 ...

  6. 【SQL】- 基础知识梳理(二) - SQL简介

    一.引言 在梳理这些知识之前,说实话,如果有人问我SQL是什么?我可能会回答就是“INSERT,DELETE,UPDATE,SELECT”语句呗,还能是啥. 二.SQL概念 SQL是什么? SQL是S ...

  7. Kali Linux渗透基础知识整理(二)漏洞扫描

    Kali Linux渗透基础知识整理系列文章回顾 漏洞扫描 网络流量 Nmap Hping3 Nessus whatweb DirBuster joomscan WPScan 网络流量 网络流量就是网 ...

  8. CSS3基础知识

    CSS3基础 1 样式表的使用 1.内联样式表. 只影响单个元素,常用于标签. <p style="color: aqua;font-size: 20px">This ...

  9. canvas 基础知识整理(二)

    html部分: <canvas id="myCanvas" width="800" height="800" ></can ...

随机推荐

  1. magento如何安装语言包

    1,先下安装,直接在www.magento.com(搜索chinese)官网获得下载密钥,然后在下载站点输入密钥就可以下载,下载完成后的安装包放到app/local文件夹下即可,到后台刷新一下: 2线 ...

  2. Samsung_tiny4412(驱动笔记08)----jiffies,timer,kthread,workqueue,tasklet

    /*********************************************************************************** * * jiffies,tim ...

  3. U-Boot_bmp_logo_hacking

    /*********************************************************************** * U-Boot_bmp_logo_hacking * ...

  4. Ubuntu 18.10安装Firefox 和 Google Chrome

    ================================ 工作环境迁移到Linux上,操作系统使用Linux Mint19.1(基于Ubuntu的), 自带的浏览器器是低版本的英文版,现在使用 ...

  5. 相邻行列相互影响的状态类问题(类似状压dp的搜索)(POJ3279)

    POJ3279http://poj.org/problem?id=3279 题意:黑白的板,每次选择一个十字形翻转(十字板内黑白互换,若是边界则不管),求最小将原图变为全白的策略. 这是一道对于每个格 ...

  6. hdu2090-2097

    hdu2090 模拟 #include<stdio.h> int main(){ ]; ,a1,a2; ; while(scanf("%s%lf%lf",b,& ...

  7. JS Array.filter()方法

    1.filter()接收的函数可以有多个参数.通常我们只使用第一个参数,第二参数和第三个参数表示元素的位置和数组本身: //去重 var arr = ["1", "2&q ...

  8. 前端css规范

    文章整理了Web前端开发中的各种CSS规范,包括文件规范.注释规范.命名规范.书写规范.测试规范等. 一.文件规范 1.文件均归档至约定的目录中(具体要求以豆瓣的CSS规范为例进行讲解): 所有的CS ...

  9. test20181005 迷宫

    题意 分析 时间复杂度里的n,m写反了. 出题人很有举一反三的精神. 代码 我的代码常数巨大,加了各种优化后开O3最慢点都要0.9s. #include<cstdlib> #include ...

  10. echar生成雷达图

    function createRadarChart(indicatorData, personData) { var myChart = echarts.init(document.getElemen ...