csstransform属性详解(csstransition属性)

本篇文章给大家谈谈csstransform属性详解,以及csstransition属性对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

CSS3 transform 缩放

这是一亩山燃个缩放的transform属性,y值可以省略,如果y值省略的话,那默认就和x值一样。

举例:

这个例子的执行效果就是,当把唯枝指针hover到这个div上的时候,那这个div会放大到原来的1.1倍大。相应的,如果把值改为0.5,hover的时迅虚候x和y就会缩小到原来的二分之一。

需要注意的是它的transfom-origin是中心点

只缩放X轴上的倍数。

3、transformY:scale(y);

只缩放Y轴上的倍数。

以上的缩放点都是中心点。

[img]

CSS3中的translate、transform和transition的区别

transform是变形的意思,translate是transform的一个属性,表示2D动作。

实现动画键察过程

需要变换的属性 变换需要的时间 控制动画速度变御铅化 延镇亮好期多少时间后开始执行

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

1、translate3d(x,y,z) 是猜滑用来控制元素的位置在页面上的三轴的位置的;

2、rotate(deg)是用来控制元素旋转角度的;

3、skew[x,y](deg) 这个属性是用来制作倾斜度的,做过设计的人可能会知道,这个是用来在2d里面创建3d透视图的时候必须的属性;

4、scale3d(x,y,z) 用来穗举腊答渣放大缩小效果,属性是比值;

5、matrix3d,css矩阵。通过这个矩阵属性,涵盖了上面所有的属性值,但是个人觉得可读性极差(全都是数字和单位,背起来有点模糊),目前没有理由推荐使用。

css3中的transform、transition、translate、animation

transform:属性应用 2D 或 3D 转换。该属性允许我们对元素进行旋转(rotate)、缩放(scale)、移动(translate)、倾斜,扭曲(skew),设置基点位置transform-origin:50% top;

 rotate:         是transform的值,定义2D或3D的旋转,在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。

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

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

                     事例:2D:transform: rotate(45deg);3D:ransform: rotate3d(0,0,0,45deg)

scale:           是transform的值,定义 2D 或3D缩放,表示对当前元素的缩放。

                    2D:scale(x,y)定义 2D 缩放,对当前元素的宽度是原始大小的x倍,高度是原始大小的y倍。

                    3D:scale3d( x , y , z )定义 3D 缩放,对当前元素在x轴,y轴,z轴的缩放。

                    事例:2D:scale: scale(2,3);3D:ransform: scale3d(0,0,1)

translate  :是transform的值,定义 2D 或3D转换,表示对当前元素的位移。

                    2D:translate( x , y )定义 2D 转换,沿着 X 和 Y 轴移动元素。

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

                   事例:2D:transform: translate(50px,100px);3D:ransform: translate3d(50px,100px,50px)

skew:       是transform的值,定义倾斜,表示对当前元素的倾斜角度。

         冲脊      兆培    skew( x-angle , y-angle )定义 2D 倾斜,分别表示X轴和Y轴倾斜的角度,如果第二个参数为空,则默认为0,参数为负表示向相反方向倾斜

                   事例:transform: skew(1deg,2deg)

transition属性:允许CSS属性值在一定的时间区间内平滑的过渡,只能设置 初始值和结束值,需要事件的触发,例如单击、获取焦点、失去焦点等

                        transition : transition-property   transition-duration   transition-timing-function   transition-delay ;

                        transition-property :规定应用过渡的 CSS 属性的名称。

                      transition-duration :定义过渡效果花费的时间。默认是 0。

                      transition-timing-function :规定过渡效果的时间曲线。默认是 "ease"。

                      transition-delay :规定过渡效果延迟的时间。默认是 0。

           族判唯           事例:  transition : width 2s ease-in-out  1s

animation属性:通过帧动画对当前元素的某些属性进行帧动画的播放,功能相似于transition,但更加的精确、可以控制到每一帧,高版本的浏览器还支持css或者JS控制停止动画 以及获取动画当前                            状态等,请用百分比来规定变化发生的时间,或用关键词 "from" 和 "to",等同于 0% 和 100%。0% 是动画的开始,100% 是动画的完成。

      @keyframes fadeIn {

                    0% {opacity:0; }

                  100% {opacity:1;}

         }

                          事例:animation:fadeIn 5s infinite;(fadeIn是帧动画的名称)infinite 无限循环

@keyframes fadeIn {

0% {opacity:0;}

100% {opacity:1;}

}

@keyframes fadeout {

0% {opacity:1;}

100% {opacity:0;}

}

@keyframes pendulu {

from {transform:rotate3d(0,0,1,0);}

5.5% {transform:rotate3d(0,0,1,-11deg);}

7% {transform:rotate3d(0,0,1,-12deg);}

16% {transform:rotate3d(0,0,1,9deg);}

17.5% {transform:rotate3d(0,0,1,10deg);}

26.5% {transform:rotate3d(0,0,1,-7deg);}

28% {transform:rotate3d(0,0,1,-8deg);}

36.5% {transform:rotate3d(0,0,1,5deg);}

38% {transform:rotate3d(0,0,1,6deg);}

46.5% {transform:rotate3d(0,0,1,-4deg);}

48% {transform:rotate3d(0,0,1,-5deg);}

57% {transform:rotate3d(0,0,1,3deg);}

58.5% {transform:rotate3d(0,0,1,4deg);}

66.5% {transform:rotate3d(0,0,1,-2deg);}

68% {transform:rotate3d(0,0,1,-3deg);}

75% {transform:rotate3d(0,0,1,1.5deg);}

76.5% {transform:rotate3d(0,0,1,2.5deg);}

82.5% {transform:rotate3d(0,0,1,-1deg);}

84% {transform:rotate3d(0,0,1,-2deg);}

90% {transform:rotate3d(0,0,1,1.5deg);}

95% {transform:rotate3d(0,0,1,-1deg);}

to {transform:rotate3d(0,0,1,0);}

}

@keyframes scale {

0% {transform:scale(0.9);}

100% {transform:scale(1);}

}

@keyframes cloud {

0% {transform:translateX(0);}

25% {transform:translateX(30%);}

50% {transform:translateX(60%);}

75% {transform:translateX(30%);}

100% {transform:translateX(0);}

}

@keyframes  fadeInDown

{

0% {

    opacity: 0;

    filter: alpha(opacity=0);

    -webkit-transform: translate3d(0, -100%, 0);

    transform: translate3d(0, -100%, 0);

}

100% {

    opacity: 1;

    filter: alpha(opacity=100);

    -webkit-transform: none;

    /* transform: none; */

}}

@-webkit-keyframes bounceIn {

0%,20%,40%,60%,80%,100% {

-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);

transition-timing-function:cubic-bezier(.215,.61,.355,1)

}

0% {

opacity:0;

filter:alpha(opacity=0);

-webkit-transform:scale3d(2,2,2);

transform:scale3d(2,2,2)

}

40% {

-webkit-transform:scale3d(.9,.9,.9);

transform:scale3d(.9,.9,.9)

}

60% {

-webkit-transform:scale3d(1.03,1.03,1.03);

transform:scale3d(1.03,1.03,1.03)

}

80% {

opacity:1;

filter:alpha(opacity=100);

-webkit-transform:scale3d(.97,.97,.97);

transform:scale3d(.97,.97,.97)

}

100% {

-webkit-transform:scale3d(1,1,1);

transform:scale3d(1,1,1)

}

}

.rotate2d {

-webkit-animation-timing-function:linear;

animation-timing-function:linear;

-webkit-animation-name:rotate2d;

animation-name:rotate2d

}

.box-bottle {

position:absolute;

left:70%;

width:pr(99);

height:pr(97);

background:url("#{$imgPath}btn-bottle.png")no-repeat;

background-size:100%;

transform-origin:35% 68%;

opacity:0;

z-index:10;

div {

position:absolute;

width:pr(18);

height:pr(35);

transform:translate3d(-150%,-20%,0)rotate3d(0,0,1,100deg);

transition:opacity .5s linear 1.5s;

}

i {

position:absolute;

width:pr(18);

height:pr(35);

background-repeat:no-repeat;

background-size:100%;

transform-origin:3000% 50%;

opacity:0;

:nth-child(1) {

transition:transform 1s ease-out 1s,opacity .2s linear .9s;

background-image:url("#{$imgPath}water1.png");

}

:nth-child(2) {

transition:transform 1.1s ease-out .9s,opacity .2s linear .8s;

background-image:url("#{$imgPath}water2.png");

}

:nth-child(3) {

transition:transform 1.2s ease-out .8s,opacity .2s linear .7s;

background-image:url("#{$imgPath}water3.png");

}

:nth-child(4) {

transition:transform 1.3s ease-out .7s,opacity .2s linear .6s;

background-image:url("#{$imgPath}water4.png");

}

:nth-child(5) {

transition:transform 1.4s ease-out .6s,opacity .2s linear .5s;

background-image:url("#{$imgPath}water5.png");

}

:nth-child(6) {

transition:transform 1.5s ease-out .5s,opacity .2s linear .4s;

background-image:url("#{$imgPath}water6.png");

}

}

.active {

opacity:1;

animation:pour 2.5s both;

div {

opacity:0;

}

i {

opacity:1;

:nth-child(1) {

transform:rotate3d(0,0,1,-25deg);

}

:nth-child(2) {

transform:rotate3d(0,0,1,-25deg)translate3d(130%,50%,0);

}

:nth-child(3) {

transform:rotate3d(0,0,1,-25deg)translate3d(260%,0,0);

}

:nth-child(4) {

transform:rotate3d(0,0,1,-25deg)translate3d(0,150%,0);

}

:nth-child(5) {

transform:rotate3d(0,0,1,-25deg)translate3d(130%,200%,0);

}

:nth-child(6) {

transform:rotate3d(0,0,1,-25deg)translate3d(260%,150%,0);

}

}

}

}

css3系列之transform详解translate

translate这个参数的,是transform 身上的,那么它有什么用呢?

其实他的作用很简单,就是平移,参考自己的位置来平移

translate()

translateX()

translateY()

translateZ()

translate3d()

translateX

向X轴平移,填正数往右平移,填负数,往左平移。

向Y轴平移,填正数往下平移,填负数,往上平移

向Z轴平移,这个可能有点难理解,键清想像一个场景,你现在和电脑屏幕的距离,这就是Z轴的距离,电脑屏幕离你越近,那么translateZ() 里面的值 越大,  电脑屏幕离你越远,谈悔 translateZ() 的值就越小。 所以说,Z 增加,那么这个电脑屏幕,离你就越近,下面要用到旋转,首先Z 轴是朝向我们的,所以 看不出效果,但是,我们把它转个身,让Z轴 面对 右边,就可以了。

translate()  和  translate3d()

translate 是同时设置  translateX  和 translateY, 所以里面可以填两个参数, 第一个值 X  第二个 Y

translate3d 是同时设置  translateX  ,translateY 和 translateZ 所以里面可以填三个参数

只不过有含亮正点不同的是, translate 如果第二个参数不填的话,默认是0, 不过translate3d的话,人家就不同意你不填了,你三个参数,必须都给我填。

关于csstransform属性详解和csstransition属性的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表