css3 transition transfrom translate animate 有什么区别?

html-css017

css3 transition transfrom translate animate 有什么区别?,第1张

transition, transform, tanslate,animation分别为过渡,变换,平移、动画。transform的属性包括:rotate() / skew() / scale() / translate(,) 。

transform 属性向元素应用 2D 或 3D 转换。该属性允许我们对元素进行旋转、缩放、移动或倾斜。

为了更好地理解 transform 属性,请查看这个演示。

默认值:none

继承性:no

版本:CSS3

JavaScript 语法:object.style.transform="rotate(7deg)"

语法

transform: none|transform-functions

值 描述

none定义不进行转换。

matrix(n,n,n,n,n,n)定义 2D 转换,使用六个值的矩阵。

matrix3d(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n)定义 3D 转换,使用 16 个值的 4x4 矩阵。

translate(x,y)定义 2D 转换。

translate3d(x,y,z)定义 3D 转换。

translateX(x)定义转换,只是用 X 轴的值。

translateY(y)定义转换,只是用 Y 轴的值。

translateZ(z)定义 3D 转换,只是用 Z 轴的值。

scale(x,y)定义 2D 缩放转换。

scale3d(x,y,z)定义 3D 缩放转换。

scaleX(x)通过设置 X 轴的值来定义缩放转换。

scaleY(y)通过设置 Y 轴的值来定义缩放转换。

scaleZ(z)通过设置 Z 轴的值来定义 3D 缩放转换。

rotate(angle)定义 2D 旋转,在参数中规定角度。

rotate3d(x,y,z,angle)定义 3D 旋转。

rotateX(angle)定义沿着 X 轴的 3D 旋转。

rotateY(angle)定义沿着 Y 轴的 3D 旋转。

rotateZ(angle)定义沿着 Z 轴的 3D 旋转。

skew(x-angle,y-angle)定义沿着 X 和 Y 轴的 2D 倾斜转换。

skewX(angle)定义沿着 X 轴的 2D 倾斜转换。

skewY(angle)定义沿着 Y 轴的 2D 倾斜转换。

perspective(n)为 3D 转换元素定义透视视图。

感觉自己总是混淆css各种动画效果,所以再这里总结一下

1. transition ,所在元素块样式变动时启动,可用于样式变动时 产生过渡动画效果

| transition-property | 规定设置过渡效果的 CSS 属性的名称。 |

| transition-duration | 规定完成过渡效果需要多少秒或毫秒。 |

| transition-timing-function | 规定速度效果的速度曲线。 |

| transition-delay | 定义过渡效果何时开始。 |

2. tranform :用于平移,旋转,缩放,透视

语法

animation-name 规定需要绑定到选择器的 keyframe 名称。

animation-duration规定完成动画所花费的时间,以秒或毫秒计。

animation-timing-function规定动画的速度曲线。

animation-delay规定在动画开始之前的延迟。

animation-iteration-count规定动画应该播放的次数。

animation-direction规定是否应该轮流反向播放动画。

animationname 必需。定义动画的名称。

keyframes-selector 必需。动画时长的百分比。值:0-100%,from(与 0% 相同),to(与 100% 相同)

css-styles 必需。一个或多个合法的 CSS 样式属性。

4.@media :可以根据屏幕大小响应式改变样式

接下来利用transition和transfrom实现一个简单的翻牌效果,先看效果