一、css3过渡

语法: transition: 过渡属性 过渡时间 延迟时间 过渡方式;

1.过渡属性(transition-property)

取值:all 所有发生变化的css属性都添加过渡

  eg: transition: all 1s;

  ident 指定要过渡的css属性列表

  eg: transition:border-radius 1s,background 2s;

  none 没有属性发生过渡

注:我们可以省略滑过状态或其他状态的过渡属性,但是不能省略初始状态的transition属性

2.过渡时间(transition-duration)

取值:0 不过渡

   time 设置一个正数,单位为s

eg: transition: all 1s;

3.延迟时间(transition-delay)

取值:

0 不延迟,过渡动画正常执行

正数 按照设置的时间延迟执行过渡动画

负数 设置时间前的动画将会被截断

4.过渡方式(transition-function)

取值:

ease 缓解效果,默认值

linear 匀速运动

ease-in 加速运动

ease-out 减速运动

ease-in-out 慢-快-慢


二、css3动画

语法: animation:动画名称 动画执行时间 动画延迟执行时间 动画播放次数 动画播放后的状态;

动画是由一帧一帧的关键帧组成的,在设置animation之前要先定义动画关键帧:

语法:

@keyframes 动画名称{
0%{
属性:属性值;
}
50%{
属性:属性值;
}
...
100%{
属性:属性值;
}
}

@keyframes 动画名称{
from{
属性:属性值;
}
...
to{
属性:属性值;
}
}

1.动画名称(animation-name)

eg: animation:ball 1s;

注:动画名称要与@keyframes中的动画名称一致

2.动画执行一次所需的时间(animation-duration)

取值:

time: 正数,单位为秒(s)或者毫秒(ms),默认为0,不执行动画

3.动画延迟执行的时间(animation-delay)

取值:

0: 默认值,不延迟

正数: 按照设置的时间延迟执行动画

负数: 设置时间前的动画将会被截断

4.设置动画的播放次数(animation-iteration-count)

取值:

number 可以设置为正整数

infinite 无限循环播放

5.设置对象动画的状态(animation-play-state)

取值:

running 默认值,运动

paused 动画暂停

6.设置动画的播放方式(animation-timing-function)

取值:

ease

linear 匀速运动

ease-in

ease-out

ease-in-out

step-start 马上转跳到动画的结束状态或马上转跳到下一帧,中间没有过渡

step-end 保持动画开始时的状态,直到动画执行结束,转跳到动画结束状态

steps(n,start|end)

n代表动画分几步完成

7.设置对象动画的运动方向(animation-direction)

取值:

normal 默认值,正常方向运动

reverse 与normal方向相反运动

alternate 奇数次正方向,偶数次反方向

alternate-reverse 奇数次反方向,偶数次正方向

8.设置对象动画时间之外的状态(animation-fill-mode)

取值:

none 默认值,不设置对象动画之外的状态

forwards 保持动画结束时的状态

backwards 保持动画开始时的状态

both 遵循forwards和backwards两个规则


 三、CSS3 transition和animation的区别

1.transition动画执行需要出发条件,animation动画出发在页面加载完成后可以自动执行

2.transition触发一次执行一次,多次执行需要执行多次触发条件,animation可以无限循环播放,也可限制次数

3.transition只能设置开始和结束状态 不能设置中间的动态


扩展:隐藏变形元素的背面 backface-visibility:hidden;

从零开始学习前端开发 — 15、CSS3过渡、动画的更多相关文章

  1. 从零开始学习前端开发 — 17、CSS3背景与渐变

    一.css3背景切割: background-clip:border-box|padding-box|content-box; 作用: 用来设置背景的可见区域 a) border-box 默认值,背景 ...

  2. 从零开始学习前端开发 — 11、CSS3选择器

    一.基本选择器 1.* 通配符(通用选择器) 2.id选择器 3.class选择器(类选择器) 4.标签选择器(元素选择符) 5.群组选择器 (选择符1,选择符2{...}) 二.层次选择器(关系选择 ...

  3. 从零开始学习前端开发 — 16、CSS3圆角与阴影

    一.css3圆角: border-radius:数值+单位; 1.设置一个值:border-radius:20px; 四个方向圆角都为20px(水平半径和垂直半径相等) 2.设置两个值 border- ...

  4. 从零开始学习前端开发 — 14、CSS3变形基础

    一.css3变形: transform:rotate(旋转)|scale(缩放)|skew(倾斜)|translate(位移); 注:当多种变形方式综合在一起时,用空格隔开 1.旋转 a) rotat ...

  5. 从零开始学习前端开发 — 12、CSS3弹性布局

    一.分栏布局 1.设置栏数column-count:数值; 2.设置每栏的宽度column-width:数值+单位; 注:当设置了column-width,column-count会失效,二者设置其一 ...

  6. 从零开始学习前端开发 — 2、CSS基础

    一.CSS简介  1.CSS是什么 CSS是Cascading Style Sheets的简称,中文称为层叠样式表.特点:实现了表现与结构相分离 2.css基础语法 css是由选择符和声明两大部分组成 ...

  7. 从零开始学习前端开发 — 18、BFC

    一. BFC的概念 BFC--block formating context的缩写,中文译为"块级格式化上下文" 二.如何触发BFC 1.设置float除none以外的值(left ...

  8. 从零开始学习前端开发 — 10、HTML5新标签及表单控件属性和属性值

    一.html5新增标签 1.结构性标签 header 定义网页的头部 nav 定义网页的导航 footer 定义网页的底部 section 定义网页的某个区域 article 定义网页中的一篇文章 a ...

  9. 从零开始学习前端开发 — 9、标签嵌套规则及CSS常用样式覆盖

    1. 块级元素可以包含内联元素或某些块级元素,但内联元素却不能包含块级元素,它只能包含其它的内联元素: <div><h1></h1><p></p& ...

随机推荐

  1. C# 调用动态链接库,给游览器写入Cookie

    样例代码: class Program { /// <summary> /// 写 /// </summary> /// <param name="lpszUr ...

  2. php使用websocket示例详解

    一.php 中处理 websocket WebSocket 连接是由客户端主动发起的,所以一切要从客户端出发.第一步是要解析拿到客户端发过来的 Sec-WebSocket-Key 字符串. 复制代码代 ...

  3. SQL基础学习_05_函数、谓词、CASE表达式

    函数 算术函数 1. 四则运算: +.-.*./  2. ABS:求绝对值, ABS(数值) 3. MOD: 求余,MOD(被除数,除数) 4. ROUND:四舍五入,ROUND(对象数值,保留小数的 ...

  4. Android中Handler的消息处理机制以及源码分析

    在实际项目当中,一个很常见的需求场景就是在根据子线程当中的数据去更新ui.我们知道,android中ui是单线程模型的,就是只能在UI线程(也称为主线程)中更新ui.而一些耗时操作,比如数据库,网络请 ...

  5. NestedScrollingParent, NestedScrollingChild 详解

    之前听同事提起过 NestedScrollingView,但是一直没有时间去了解,最近一段时间比较空,才开始去了解.先点开,看 NestedScrollingView 源码: public class ...

  6. UWP 手绘视频创作工具技术分享系列 - 手绘视频与视频的结合

    本篇作为技术分享系列的第三篇,详细讲一下手绘视频中结合视频的处理方式. 随着近几年短视频和直播行业的兴起,视频成为了人们表达情绪和交流的一种重要方式,人们对于视频的创作.编辑和分享有了更多的需求.而视 ...

  7. 客户端 未登录页面 (clearfix 分割线)

    做了一个手机客户端页面,未登录的状态页面 类似 如上图所示 这样 上面列表采取80%宽度,右侧浮动.ul li设置绝对定位.左边icon图标采取决定定位. 为了防止小屏幕手机左边空白缝隙过小,事先给外 ...

  8. Python开发之路

    详细内容见老男孩<<python入门与提高实践>> 第一篇:python入门 第二篇:数据类型.字符编码.文件处理 第三篇:函数 第四篇:模块与包 第五篇:常用模块 第六篇:面 ...

  9. 在单链表和双链表中删除倒数第k个结点

    题目: 分别实现两个函数,一个可以删除单链表中倒数第K个节点,另一个可以删除双链表中倒数第K个节点. 要求: 如果链表长度为N,时间复杂度达到O(N),额外空间复杂度达到O(1). 解答: 让链表从头 ...

  10. dom4j 间隔插入节点 处理复杂的xml文档

    前几周跟着老师做了一个小项目,个人主要负责xml文档处理,处理过程还是比较复杂的.此外这篇文章并不是讲基本的dom4j读写xml文档, 所以阅读此文的前提是你已经有了dom4j或jdom等处理xml文 ...