欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

CSS3中translate、transform和translation,和动画animation实例讲解

程序员文章站 2022-06-23 19:12:48
举个栗子: --------元素整体居中.box{ position:absolute;top:50%;left:50%; width:50px;height:50px;...

举个栗子:

--------元素整体居中.box{

position:absolute;top:50%;left:50%;

width:50px;height:50px;

transform:translate(-50%,-50%);

background:gray;

}translate:移动,transform的一个方法

通过translate() 方法,元素从其当前位置移动,根据给定的 left(x 坐标) 和 top(y 坐标) 位置参数:用法transform: translate(50px, 100px);-ms-transform: translate(50px,100px);-webkit-transform: translate(50px,100px);-o-transform: translate(50px,100px);-moz-transform: translate(50px,100px);

transform:变形,改变

CSS3中主要包括在CSS3中transform主要包括以下几种:旋转rotate、扭曲skew、缩放scale和移动translate以及矩阵变形matrix。

旋转:rotate() 顺时针旋转给定的角度,允许负值 rotate(30deg)扭曲:skew() 元素翻转给定的角度,根据给定的水平线(X 轴)和垂直线(Y 轴)参数:skew(30deg,20deg)缩放:scale() 放大或缩小,根据给定的宽度(X 轴)和高度(Y 轴)参数: scale(2,4)移动:translate() 平移,传进 x,y值,代表沿x轴和y轴平移的距离所有的2D转换方法组合在一起: matrix() 旋转、缩放、移动以及倾斜元素matrix(scale.x ,, , scale.y , translate.x, translate.y)

改变起点位置 transform-origin: bottom left;transform: rotate 旋转| scale 缩放| skew扭曲| translate移动|matrix矩阵变形;

综合起来使用:transform: 30deg 1.5 30deg 20deg 100px 200px;//需要有空格隔开

transition: 允许CSS属性值在一定的时间区间内平滑的过渡.(过渡动画)

Transition作用是指定了某一个属性(如width、left、transform等)在两个值之间如何过渡,他包括

transition

-property、transition-duration、transition-timing-function、transition-delay等。

如果某一个元素指定了Transiton,那么当其某个属性改变的时候就会按照Transition指定的方式进行过渡,

动画就这么产生了。

css的transition允许css的属性值在一定的时间区间内平滑地过渡。这种效果可以在鼠标单击、获得焦点、被点击或对元素任何改变中触发,并圆滑地以动画效果改变CSS的属性值。transition主要包含四个属性值:执行变换的属性:transition-property;变换延续的时间:transition-duration;在延续时间段,变换的速率变化:transition-timing-function//例:平缓进入、先快后慢;变换延迟时间:transition-delay。需要事件的触发,例如单击、获取焦点、失去焦点等transition:property duration timing-function delay;property:CSS的属性,例如:width height 为none时停止所有的运动,可以为transformduration:持续时间timing-function:ease等delay:延迟注意:当property为all的时候所有动画例如:transition:width 2s ease 0s;

Animation

Animation也是通过指定某一个属性(如width、left、transform等)在两个值之间如何过渡来实现动画的,

与Transition不同的是:

1.Animation可以通过keyframe显式控制当前帧的属性值,而Transition只能隐式来进行

(不能指定每帧的属性值),所以相对而言Animation的功能更加灵活;

2.Animation通过模拟属性值改变来实现动画,动画结束之后元素的属性没有变化;而Transition确实改变了元

素的属性值,动画结束之后元素的属性发生了变化;这一点,这在实际应用中会产生很大的区别。

Animation模块包括了animation-name、animation-duration、animation-timing-function、

animation-delay、animation-iteration-count、animation-play-state等属性。