transition是css3新出的一个属性,大白话叫做过渡。

主要有下面这四个属性:

transition-propertytransition-durationtransition-timing-functiontransition-delay(我做了四个预览效果,点击可查看)

大白话分别是,需要过渡的属性,所用时间,时间曲线(或者说过渡速度?),还有最后的就叫做延迟。

注意:Internet Explorer 10, Firefox, Opera, Chrome, 和Opera 支持transition 属性。Safari 需要前缀 -webkit-。Internet Explorer 9 以及更早的版本,不支持 transition 属性。Chrome 25 以及更早的版本,需要前缀 -webkit-

好了,咱们来一个一个说。首先是transition-property这个,它规定的是过渡属性的名称,比如宽度(width)、颜色(color)等等,也可以是所有(all),甚至是没有(none);

transition-property效果如下:

过渡的是宽度
过渡的是背景颜色

然后说这个所用时间transition-duration,单位可以是秒(s),也可以是毫秒(ms);

transition-duration效果如下:

过渡1秒
过渡5秒

时间曲线transition-timing-function这个属性是很奇妙的一个属性,它涉及到一个“贝塞尔曲线(cubic-bezier)“的概念,在这用张图给大家说一下:

这张图就是贝塞尔曲线(黑长粗),横向是时间,纵向是完成度,图中有四个点P0、P1、P2、P3,P0和P3是固定的点,P1和P2是可操作的点,设置的四个数值前两个是P1的坐标,后两个是P2的坐标,四个值的需是0~1之间(包括0和1),然后生成的这个贝塞尔曲线就是时间曲线了。

注:时间曲线有几个首选值,分别是:

  • linear:线性过渡。等同于贝塞尔曲线(0.0, 0.0, 1.0, 1.0)
  • ease:平滑过渡。等同于贝塞尔曲线(0.25, 0.1, 0.25, 1.0)
  • ease-in:由慢到快。等同于贝塞尔曲线(0.42, 0, 1.0, 1.0)
  • ease-out:由快到慢。等同于贝塞尔曲线(0, 0, 0.58, 1.0)
  • ease-in-out:由慢到快再到慢。等同于贝塞尔曲线(0.42, 0, 0.58, 1.0)

这里还有一个特殊属性:steps,格式是这样的:

steps(<integer>[,[start|end]]) —— 这个属性写出来是这样:

transition-timing-function: steps(3, start);

还有这样:

transition-timing-function: steps(3, end);

简单来说这个效果类似于蹦蹦跳跳的完成过渡,第一个数字是说跳几次,第二个参数是说在何时跳,具体还是看效果吧,我嘴笨……

transition-timing-function效果如下:

贝塞尔曲线1,0,0,1
贝塞尔曲线0,1,1,0
steps(3, start)
steps(3, end)

最后一个是延迟transition-delay,就是多久之后开始,默认是0,单位是秒(s)或者毫秒(ms)。

transition-delay效果如下:

2秒延迟
无延迟

所有案例文件在

效果集合在

transition的唧唧歪歪的更多相关文章

  1. CSS 3学习——transition 过渡

    以下内容根据官方规范翻译以及自己的理解整理. 1.介绍 这篇文档介绍能够实现隐式过渡的CSS新特性.文档中介绍的CSS新特性描述了CSS属性的值如何在给定的时间内平滑地从一个值变为另一个值. 2.过渡 ...

  2. css3 transition animation nick

    时光转眼即逝,又到周六了,今天写点某部分人看不起的css玩玩! 转换 转换属性transform: 浏览器前缀: -webkit-transform;-o-transform;-moz-transfo ...

  3. 深入理解CSS过渡transition

    × 目录 [1]定义 [2]过渡属性 [3]持续时间[4]延迟时间[5]时间函数[6]多值[7]阶段[8]触发[9]API 前面的话 通过过渡transition,可以让web前端开发人员不需要jav ...

  4. css3 transition属性

    最近打算学习css3知识,觉得css3写出来的效果好炫好酷,之前一直想要学习来着.可能之前的决心,毅力,耐心不够,所以想要重整起来,放下浮躁的心态,一步一个脚印,踏踏实实的来学习. 首先学习的是css ...

  5. D3中动画(transition函数)的使用

    关于transition的几个基本点: 1. transition()是针对与每个DOM element的,每个DOM element的transition并不会影响其他DOM element的tra ...

  6. 弄清 CSS3 的 transition 和 animation

    弄清 CSS3 的 transition 和 animation transition transition 属性是 transition-property, transition-duration, ...

  7. css3中transition和display的坑

    不知道大家做css3动画的时候遇到过这种情景没? 用opacity实现淡入淡出的效果.噢!good!一切正常 给个栗子: <!DOCTYPE html> <html> < ...

  8. css3中动画(transition)和过渡(animation)详析

    css3中动画(transition)和过渡(animation)详析

  9. border-radius结合transition的一个小应用(动画)

    <head lang="en"> <meta charset="UTF-8"> <title></title> ...

随机推荐

  1. Java中的编码格式

    Java中的编码 gbk编码 中文占用2个字节,英文占1个字节; utf-8编码 中文占用3个字节.,英文占用1个字节; Java是双字节编码 (utf-16be) utf -16be 中文占2个字节 ...

  2. Oracle静默安装-简单记录

    一.与图形界面安装一样,检查如下条件:新建用户.组创建安装目录配置环境变量检查安装依赖包修改内核参数……前面这些操作都属于常规操作,不管是图形还是静默都需要处理. 二./home/oracle/dat ...

  3. Android Studio 导入Eclipse工程

    eclipse:workspace对应多个project:而android studio是project对应多个module:故,在android studio中的工程project实际上是eclip ...

  4. html进阶css(2)

    选择器的类型 <!doctype html> <html> <head> <meta charset="utf-8"> <ti ...

  5. jquery的验证实例方法

    上一篇介绍了js的正则验证法,这一片就用jquery来实例运行一下其中的几个方法 Js部分 <script> $(function(){ var ok1=false; var ok2=fa ...

  6. ORACLE/MYSQL/DB2等不同数据库取前几条记录

    选取数据库中记录的操作是最基础最频繁的,但往往实际应用中不会这么简单,会在选取记录的时候加上一些条件,比如取前几条记录,下面就总结了如何在ORACLE/MYSQL/DB2等一些热门数据库中执行取前几条 ...

  7. 对boost::shared_from_this的进一步封装

    对boost::shared_from_this的进一步封装 熟悉异步编程的同学可能会对boost::shared_from_this有所了解.我们在传入回调的时候,通常会想要其带上当前类对象的上下文 ...

  8. C++之类和对象——C++ primer plus学习(一)

    一.类的构造函数和析构函数 1.构造函数:    1)试图将类成员名称用作构造函数的参数名是错误的.    2)构造函数的参数表示的不是类成员, 而是赋给类成员的值.    3)为了避免这种混乱,一种 ...

  9. Ecstore中的微信支付怎么样配置

    要在Ecstore中开启微信支付,需要先在后台/应用中心中安装“移动商城”和“微信商城管理”这两个App移动商城App是ecstore的手机wap版,可在手机浏览器中实现商城的B2c购物功能.“微信商 ...

  10. POJ 1564 Sum It Up(DFS)

    Sum It Up Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit St ...