• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >css3 > CSS3中动画属性transform、transition和animation属性的区别

CSS3中动画属性transform、transition和animation属性的区别

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-02

本文主要包含css3 transform,css3中transform,css3 transform 属性,css3 transform style,css3 transform scale等相关知识,佚名 希望在学习及工作中可以帮助到您

Transform
在部分的test case当中,每每演示transform属性的,看起来好像都是带动画。这使得小部分直觉化思维的人(包括我)认为transform属性是动画属性。而恰恰相反,transform属性是静态属性,一旦写到style里面,将会直接显示作用,无任何变化过程。transform的主要用途是用来做元素的特殊变形,对于做设计的人来说并不是很陌生,简单的来说就是css 的图形变形工具。

关于图形变形的基础条件当中的原点设定,在css里面使用的是transform-origin来定义的。这个定义的原点应该是该css作用的元素的左上角为0,0来计算的(有待研究)。其他的属性则根据这个属性来计算进行计算。

关于图形变化的模式,css3标准当中transform-style来定义。默认是flat,展现出来的是简单的效果。而preserve-3d则将空间呈现为3d模式。从正常的思维来说,应该只需要preserve-3d就好了,但是从谣传“开启了perserve-3d就使用了GPU加速”来说,这个属性可能是为了降低系统消耗用的,毕竟3d比2d要多一个维度的计算。

如果需要使用3d模式,必须先指定style为3d,并在任意父元素上增加 perspective及 perspective-origin 来指定透视点。

具体的给设计师改变元素样式用的属性则有以下五个:

     1、translate3d(x,y,z) 是用来控制元素的位置在页面上的三轴的位置的;
     2、rotate(deg)是用来控制元素旋转角度的;
     3、skew[x,y](deg) 这个属性是用来制作倾斜度的,做过设计的人可能会知道,这个是用来在2d里面创建3d透视图的时候必须的属性;
     4、scale3d(x,y,z) 用来放大缩小效果,属性是比值;
     5、matrix3d,css矩阵。通过这个矩阵属性,涵盖了上面所有的属性值,但是个人觉得可读性极差(全都是数字和单位,背起来有点模糊),目前没有理由推荐使用。

总体看来 css transform的属性和原来使用的left ,right ,top, bottom 的属性从动静角度来说没有任何区别,因此使用的时候应该将transform归类到这类定位变形的静态属性里面。

Transition
transition属性是一个简单的动画属性,非常简单非常容易用。可以说它是animation的简化版本,是给普通做简单网页特效用的。比如你有如下两个样式:

首先你的元素的css为position。当你将其cssList 增加 animate 或者替换position 为animate的时候,元素的属性变化,触发webkit-transition,以指定属性变化前的值为起始值,变化后的属性为结束值,执行动画效果。这是一个简单的两点变化过程,大大简化了animation属性的复杂程度。

同时,如果在transition的动画当中,属性值有了新的变化,则会中断当前的动画执行,并将中断时的属性值提供给新的动画作为起始值来计算新的动画效果。

我在css编写的时候,因为变化的属性只有transform一个,因此在transtion属性里面指定响应属性为all,可以响应并执行元素所有属性的变化动画(能做动画的属性)。

Animation
在官方的Introduction上介绍这个属性是transition属性的扩展。但是这个简单的介绍里面包含了不简单的东西:keyframes。

做过Flash动画的人都会知道,Flash里面有两个基础武器:时间轴和关键帧。而css keyframes的出现,则是提供了flash世界里面的这两个属性的合集。看一个简单的 keyframes 的示例:

另外在animation属性里面还有一个最重要的就是:animation-fill-mode,这个属性标示是以(from/0%)指定的样式 还是以(to/100%)指定的样式为动画完成之后的样式。这个很方便我们控制动画的结尾样式,保证动画的整体连贯。

总结
以上就是这篇文章的全部内容了,希望能对大家的学习或者工作带来一定的帮助。

</div>

您可能想查找下面的文章:

  • 使用CSS3的ruby-position固定注音位置的用法示例
  • css3 transform及原生js实现鼠标拖动3D立方体旋转
  • CSS3中的transform属性进行2D和3D变换的基本用法
  • 实例讲解CSS3中Transform的perspective属性的用法
  • CSS3中box-shadow的用法介绍
  • css3的transform中scale缩放详解
  • css3的transform造成z-index无效解决方案
  • css3 transform属性详解
  • CSS3转换功能transform主要属性值分析及实现分享
  • 利用CSS3的transform做的动态时钟效果

相关文章

  • 2017-06-02CSS3使用border-radius属性制作圆角
  • 2017-06-02使用HTML5和CSS3表单验证功能
  • 2017-06-02利用CSS3实现平移动画效果示例代码
  • 2017-06-02今天学到的CSS最新技术(与图片背景相关)
  • 2017-06-02检测用户浏览器是否支持CSS3的方法
  • 2017-06-02基于CSS3实现的漂亮Menu菜单效果代码
  • 2017-06-02利用CSS3实现单选框动画特效示例代码
  • 2017-06-02用React加CSS3实现微信拆红包动画效果
  • 2017-06-02使用CSS Grid布局实现网格的流动
  • 2017-06-02html5 css3 动态气泡按钮实例演示

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • 使用JS+CSS3技术:让你的名字动起来
    • 一款css实现的鼠标经过按钮的特效
    • CSS3提交意见输入框样式代码
    • 对CSS3选择器的研究(详解)
    • 使用CSS3的appearance属性改变元素的外观的方法
    • 任意一块网页内容实现“活”的背景(目前火狐浏览器专有)
    • 利用CSS3实现自定义滚动条代码分享
    • CSS3实现的闪烁跳跃进度条示例(附源码)
    • 浅析两列自适应布局的3种思路
    • 移动Web—CSS为Retina屏幕替换更高质量的图片

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有