一、过渡  

  过渡(transition)是CSS3中具有颠覆性的特征之一,可以在不使用 Flash 动画或 JavaScript 的情况下,当元素从一种样式变换为另一种样式时为元素添加效果。

  在CSS3里使用transition可以实现补间动画(过渡效果),并且当前元素只要有“属性”发生变化时即存在两种状态(我们用A和B代指),就可以实现平滑的过渡,为了方便演示采用hover切换两种状态,但是并不仅仅局限于hover状态来实现过渡。

  语法格式:

transition: 要过渡的属性  花费时间  运动曲线  何时开始;
如果有多组属性变化,还是用逗号隔开。

    属性:

属性 描述 CSS
transition 简写属性,用于在一个属性中设置四个过渡属性。 3
transition-property 规定应用过渡的 CSS 属性的名称。 3
transition-duration 定义过渡效果花费的时间。默认是 0。 3
transition-timing-function 规定过渡效果的时间曲线。默认是 "ease"。 3
transition-delay 规定过渡效果何时开始。默认是 0。 3

二、设置过渡属性

  使用该属性可以指定某个元素的过渡动画的 CSS属性名称。

  语法格式:

transition-property:none | all | [<ident>][,<ident>] *;
    •   none:表示没有元素;
    • all:默认值,表中针对所有的元素,包括 :before 和 :after 元素;
    • ident:指定 CSS 属性列表,可以包括所有的属性,包括新添加的 CSS3 的属性

三、设置过渡时间

  使用该属性来定义转换动画的时间长度。

  语法格式: 

transition-duration: <time> [,<time>] * ;
    •   初始值为0,适用于所有元素,以及 :before 和 :after 伪元素;
    • 单位是 秒 s 比如 0.5s 这个s单位必须写

四、设置过渡动画类型(运动曲线)

  该属性用来定义过渡动画的类型。

  语法格式:

transition-timing-function: ease | linear | ease-in | ease-out | ease-in-out  | cubicbezier{<number>,<number>,<number>,<number>}
    • ease:平滑过渡,等同于 cubic-bezier(0.25,0.10.25,0.1) 函数,即 立方贝塞尔。(默认值
    • linear:线性过渡,等同于 cubic-bezier(0.0,0.0,1.0,1.0) 函数
    • ease-in:由慢到快,等同于 cubic-bezier(0.42,0.0,1.0,1.0) 函数
    • ease-out:由快到慢,等同于 cubic-bezier(0,0,0.58,1.0) 函数
    • ease-in-out:由慢到快再到慢,等同于 cubic-bezier(0.42,0.0,0.58,1.0) 函数
    • cubic-bezier:特殊的 立方贝塞尔曲线效果。

  运动曲线示意图:

  

五、设置延迟时间

  该属性用来定义开启过渡动画的延迟时间。

  语法格式:

transition-delay:<time> [,<time>] *;
    •    初始值为0,适用于所有元素,以及 :before 和 :after 伪元素。
    • 设置时间可以为正整数,负整数和零,非零的时候必须设置单位是 s(秒) 或者 ms(毫秒)
    • 时间为负数的时候,过渡的动画会从该时间点开始显示,之前的动作被截断;
    • 时间为正数的时候,过渡的动画会延迟触发;

六、设置触发方式

  CSS3 动画一般通过鼠标事件或状态定义动画,如 CSS伪类和 JavaScript 事件。

  CSS 动态伪类

动态伪类 作用元素 说明
:link 只有链接 未访问的连接
:visited 只有链接 访问过的链接
:hover 所有元素 鼠标经过的元素
:active 所有元素 鼠标点击元素
:focus 所有可被选中的元素 元素被选中

  JavaScript 事件包括:click、focus、mousemove、mouseover、mouseout 等事件。

  还有另外一种方法是 使用 CSS3 媒体查询来实现过渡动画。

  

CSS 过渡动画的更多相关文章

  1. CSS过渡动画之transition

    O(∩_∩)O~ 这两天在看看CSS的相关内容,关于transition动画感觉很有意思,分享一下. CSS负责给html加效果,自然少不了各种动画,今天介绍一下transition. 概述 看一段比 ...

  2. 12 react 基础 的 css 过渡动画 及 动画效果 及 使用 react-transition-group 实现动画

    一. 过渡动画 # index.js import React from 'react';import ReactDOM from 'react-dom';import App from './app ...

  3. css过渡动画

    具体代码:1.水平翻转-moz-transform:scale(-1,1);-webkit-transform:scale(-1,1);-o-transform:scale(-1,1);transfo ...

  4. vue过渡 & 动画---进入/离开 & 列表过渡

    (1)概述 Vue 在插入.更新或者移除 DOM 时,提供多种不同方式的应用过渡效果.包括以下工具: 在 CSS 过渡和动画中自动应用 class 可以配合使用第三方 CSS 动画库,如 Animat ...

  5. 基于 React 实现一个 Transition 过渡动画组件

    过渡动画使 UI 更富有表现力并且易于使用.如何使用 React 快速的实现一个 Transition 过渡动画组件? 基本实现 实现一个基础的 CSS 过渡动画组件,通过切换 CSS 样式实现简单的 ...

  6. 058_末晨曦Vue技术_过渡 & 动画之过渡的类名

    进入/离开 & 列表过渡 点击打开视频讲解更加详细 概述 Vue 在插入.更新或者移除 DOM 时,提供多种不同方式的应用过渡效果.包括以下工具: 在 CSS 过渡和动画中自动应用 class ...

  7. CSS基础篇之背景、过渡动画

    background-origin(背景原点) 设置元素背景图片的原始起始位置.必须保证背景是background-repeat为no-repeat属性才能生效. background-origin: ...

  8. Css中的变形及过渡动画

    在css3的标准中新增加了变形样式,这些样式使得网页中各元素的位置形状的变换变得更加容易.其语法如下: transform:none | <transform-function>+ 其中对 ...

  9. css3-12 transition+css或transform实现过渡动画

    css3-12 transition+css或transform实现过渡动画 一.总结 一句话总结:首先要设置hover后的效果,然后在transition里面指定执行哪些样式和执行时间为多长. 1. ...

随机推荐

  1. 在liuunex下部署 springBoot项目

    1.新建springBoot项目. 2.打包生成jar 3.丢到liunex丢到(/usr/local/software) 4.检查进程,ps -ef|grep java (java代表所有的java ...

  2. 从一段文字中提取出uri信息

    package handle.groupby; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io ...

  3. div垂直居中水平居中css

    width: 860px; height: 500px; position: absolute; margin-left: -430px; margin-top: -250px; top: 50%; ...

  4. datatime模块的使用

    dt_now = datetime.datetime.now()print(dt_now)# 2019-05-09 14:44:32.555337 获取日期,不含时分秒today = dt_now.d ...

  5. ZROI 暑期高端峰会 A班 Day4 树上数据结构

    FBI Warning:本文含有大量人类的本质之一. 你经历过绝望吗? [ZJOI2007]捉迷藏 询问树上最远黑点对. 动态边分治可以比点分治少一个 \(\log\). bzoj3730 咕了. [ ...

  6. 使用canvas实现图片预览、缩放(压缩)以及生成文件下载

    参考 https://www.runoob.com/html/html5-canvas.html https://www.cnblogs.com/yuanzhiguo/p/8288822.html h ...

  7. libevent笔记4:Filter_bufferevent过滤器

    Filter_bufferevent是一种基于bufferevent的过滤器,其本身也是一个bufferevent.能够对底层bufferevent输入缓存区中的数据进行操作(加/解密等)后再读取,同 ...

  8. Kubernetes集群之清除集群

    清除K8s集群的Etcd集群 操作服务器为:192.168.1.175/192.168.1.176/192.168.1.177,即etcd集群的三台服务器.以下以192.168.1.175为例子. 暂 ...

  9. 【原】无脑操作:Markdown可以这样玩

    一.背景: Markdown是一种纯文本格式的标记语言.通过简单的标记语法,可以使普通文本内容具有一定的格式.因为语法简单明了.功能又比纯文本强大,所以很适合作为开发人员的书写工具.Markdown的 ...

  10. vim文本编辑器的使用

    1.简介 vim是vi发展过来的一款文本编辑器,功能非常强大. 2.vim的工作模式 vim有三种工作模式,分别为命令模式.编辑模式.末行模式: 1)命令模式:打开文件之后,默认进入命令模式: 2)编 ...