以前,一直都知道,transition是animation的一个简化版,甚至不算是动画,而是一种过渡。


transition的用法


早两天用transition写了一个按钮滑动的效果,类似于IOS的设置里面的按钮,截图如下,自己脑补画面

这个效果的主要处理就是,通过判定checked来判定两种状态,即点击前后的两种状态

点击前
#box:after{
content:'';
width: 50px;
height: 50px;
position: absolute;
left: 0;
top: -5px;
background-color: #fff;
border-radius: 25px; /*加上阴影特效,这个是复制过来的,对于一个非设计师来说加阴影实在太难掌握*/
box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); /*加上动画特效*/
transition: 0.4s;
} 点击后
#btn:checked~#box:after{
left: 42px;
background-color: #4285F4;
}

然后简单的在变化的样式里面加上transition即可

这里,动画效果是被动发生的,即我们进行了一系列操作,比如点击或者hover才会发生动画


变被动为主动(transition切成animation)

那么,如果我们想让上述动画效果变成自动发生该怎么样呢?

先加上关键帧

@keyframes todo {

        0%{
left: 0;
background-color: #fff;
} 100% {
left: 42px;
background-color: #4285F4;
}
} @keyframes todo-bg {
0%{
background-color: #ccc;
} 100%{
background-color: #376ecb;
}
}

加完关键帧之后,再在原本的样式上加上animation即可

#box {
animation: todo-bg 0.4s infinite alternate;
} #box:after {
animation: todo 0.4s infinite alternate;
}

这样,我们一打开浏览器,动画就会自动开始执行而不需要点击或者其它操作这是我目前认为的transition与animation的另一区别


扩展,同时也是animation的另一正式用法

还是上面的例子,除了可以使用transition达到被动动画之外,我们也可以使用animation达到被动动画效果

keyframe保持不变,把animation加在点击后的样式中即可


总结,transition可以用来做被动动画,animation既可以做被动动画,还可以做主动动画

transition与animation的更多相关文章

  1. 弄清 CSS3 的 transition 和 animation

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

  2. css3实践之图片轮播(Transform,Transition和Animation)

    楼主喜欢追求视觉上的享受,虽常以牺牲性能无法兼容为代价却也乐此不疲.本文就通过一个个的demo演示来简单了解下css3下的Transform,Transition和Animation. 本文需要实现效 ...

  3. css010 css的transform transition和animation

    css010 css的transform transition和animation 看着没有一个能想起他们是干什么的.. 1.         Transform    Transform(变形) r ...

  4. transition和animation动画简介

    本文介绍CSS动画的两大组成部分:transition和animation.我不打算给出每一条属性的详尽介绍,那样可以写一本书.这篇文章只是一个简介,帮助初学者了解全貌,同时又是一个快速指南,当你想不 ...

  5. CSS3中动画属性transform、transition 和 animation

    CSS3中和动画有关的属性有三个 transform.transition 和 animation.下面来一一说明:        transform   从字面来看transform的释义为改变,使 ...

  6. css3 transition 和 animation实现走马灯

    这段时间在做一个App,H5的开发.页面上有公告 以走马灯的形式显示出来. 在开始直接用的marquee标签,后来发现在ios客户端,走马灯移动不够平滑,有抖动现象. 对于有强迫症的我而言是无法忍受的 ...

  7. CSS3动画 transition和animation的用法和区别

    transition和animation都是CSS3新增的特性,使用时需要加内核 浏览器 内核名称 W3C   IE  -ms-  Chrome/Safari -webkit-   Firefoc - ...

  8. css3的动画特效--元素旋转(transition,animation)

    开发中,视觉要你实现一个元素的旋转问题,比如说如下图所示: 思路:首先动画动效肯定离不开anmimation动画. 和transition动画一样,animation动画也是CSS3动画的一种,这类动 ...

  9. Vue中transition和animation的使用

    一:二者的对比 1.动画循环就用animation.在animation中有一个animation-iteration-count属性可以定义循环次数.transition是执行一次以后就不会执行,但 ...

随机推荐

  1. 运行PHP

    /usr/local/php/bin/php /home/www/index.php

  2. QT5下获取本机IP地址、计算机名、网络连接名、MAC地址、子网掩码、广播地址

    获取主机名称 /* * 名称:get_localmachine_name * 功能:获取本机机器名称 * 参数:no * 返回:QString */ QString CafesClient::get_ ...

  3. cocos2d-x游戏开发系列教程-超级玛丽06-CMGameScene

    背景 在CMMenuScene中,当用户点击开始游戏时,导演让场景进入到CMGameScene 头文件 class CMGameScene : public cocos2d::CCLayer,publ ...

  4. 复习知识点:GCD多线程

    GCD的基础 #pragma mark - 使用GCD 创建一个 串行 队列 // 第一种:系统提供的创建串行队列的方法 // 在真正的开发中如果需要创建串行队列,比较习惯用这种 // dispatc ...

  5. FFmpeg源码结构图 - 解码

    ===================================================== FFmpeg的库函数源码分析文章列表: [架构图] FFmpeg源码结构图 - 解码 FFm ...

  6. 微软阵营稳定的好消息:.NET开源、Visual Studio 自由

    今天各个IT社区,头版头条说的是微软.NET开源了.宇宙中最好的IED–Visual Studio Community 2013将免费提供给用户的消息. <宇宙中最强大的开发环境免费了! > ...

  7. uboot编译: uboot编译配置和编译过程

    jz2440: 韦东山Linux视频第1期_裸板_UBoot_文件系统_驱动初步\第09课第2节 u-boot分析之Makefile结构分析.WMV <嵌入式linux完全开发手册> 15 ...

  8. c++,虚函数

    1.在声明函数时,在最前加上virtual,则该函数就是函虚数,基类的虚函数被派生类继承后仍是虚函数.2.派生类中可以重写基类的虚函数.3.用指针访问重写的虚函数时,被访问的虚函数是指针指向的对象所属 ...

  9. Android学习笔记:ListView简单应用--显示文字列表

    在activity中的编写如下代码: final List<String> items = new ArrayList<String>(); //设置要显示的数据,这里因为是例 ...

  10. redis(一)简介

    啥也不说百度各种简介 推荐一个博客灰常详细的介绍  nosqlfan  接下来发布redis+USE_TCMALLOC 的安装配置,博客好多坑,找一篇好文真心难啊.  redis+keepalived ...