CSS过渡、变换与动画

一、过渡

过渡:从一种状态(CSS效果)缓慢进入另一种状态(CSS状态)

(1)transition

                       transition-duration:过渡时间

                       单位:s/ms                  秒/毫秒                  1s=1000ms

                       默认:0s                      没有过渡

(2)transition-property:指定过渡样式

                       none:没有样式需要过渡

                       all:所有样式都需过渡

                       propertys:代表需要过渡的样式列表

                                          样式名称与样式名称之间用逗号隔开

(3)transition-delay:延迟过渡

                       单位:s/ms                  秒/毫秒                  1s=1000ms

                       默认:0s                      没有过渡

(4)transition-timing-function:过渡变换的速度函数

                       linear:从开始到结尾都是匀速过渡

                       ease-in:从慢到快

                       ease-out:从快到慢

                       ease-in-out:从慢到快,再从快到慢

(5)贝塞尔曲线

cubic-bezier:自定义曲线

(6)简写

transition:duration  delay  property  timing-function

                     过渡时间与延迟时间同时存在时,第一个时间代表过渡时间,

                     第二个时间代表延迟时间

                     必须写过渡时间,否则不会有过渡效果

transition:可以写在原始状态和目标状态中

                      写原始状态中,来回都有过渡

                      写在目标状态中,只有目标状态有过渡

二、形变

元素的2D或3D的转换,对元素进行位移、旋转、缩放或倾斜

transform:形变函数(参数)列表

                    形变函数之间用空格隔开

                    形变函数之中的参数用逗号

                    形变函数可以同时存在多个

注意:一个选择器中不能有多个transform,有会使用最后一个。

形变与过渡相结合时:

                  尽量保持元素形变函数和目标样式的形变函数一致

                  scale会影响过渡效果的有无

(1)2D

1.位置:translate

                   translateY(m):Y轴移动,单位px,正下负上

                   translateX(m):X轴移动,单位px,正右负左

                   不分大小写

                   translate(x,y):

                   只有一个值:代表X轴移动

                   两个值:同时X轴与Y轴移动

2.旋转:rotate

                  rotate(n deg)单位deg,角度

                  正数:沿Z轴顺时针旋转

                  负数:沿Z轴逆时针旋转

4.缩放:scale

                  scale(m):

                  0~1:缩小

                  1~正无穷:放大

                  负无穷~0:反转缩放


                 1个值:水平垂直方向同时放大缩小

                 2个值:x,y方向同时按指定值进行放大缩小


                 scaleX(m):水平方向缩放

                 scaleY(m):垂直方向缩放

4.倾斜:skew

                 skewX(m):沿X轴倾斜,正值:上左下右,负值:上右下左

                 skewY(m):沿Y轴倾斜,正值:上左下右,负值:上右下左

skew(m,n):

                 1个值:沿X轴方向倾斜

                 2个值:同时沿X轴,Y轴倾斜


5.形变的参照点:transform-origin

关键字:

                 水平:left center right

                 垂直: top center bottom

                 只写一个方向,另一个方向默认为center

px:

%:

                  注意:写在起始状态中

(2)3D

perspective:视距,代表默认情况下,物体离眼睛的距离

1.平移:transform:translate

位置:translateZ(m):Z轴平移

正值:物体越来越接近眼睛,超过视距则看不见

负值:物体越来越远离眼睛,值越小,物体看起来越小

2.旋转:               

                          rotateX():沿着X轴旋转

                          rotateY():沿着Y轴旋转

                          rotateZ():沿着Z轴旋转

                          注意:需要在3D状态下,才看得出有3D效果,

                                     即transform-style需设置为preserve-3d

transform-style:设置当前元素是否具有3D空间,在需要设置3D效果的父元素                               上添加

                          preserve-3d:具有3D空间,子元素有3D效果

                          flat:平面,子元素没有3D效果

transform:rotate3d(X,Y,Z,n deg)

                          参数1:X

                          参数2:Y

                          参数3:Z

                          参数4:沿着X,Y,Z轴的向量旋转

3.缩放

scaleZ(m):让本身子元素在Z轴上伸缩

                   本身的厚度不会发生任何改变

4.单个div不可以设置正反面背景

                    实现正反面背景,通过伪装变化实现,设置原始和hover之后的      z-index来显示正反面替换效果


三、动画

(1)创建动画片段

         @keyframes 动画片段名称{

                                                      from{原始样式}

                                                      to{目标样式}

                                                    }

         @keyframes 动画片段名称{

                                                     0%{样式}

                                                     50%{样式}

                                                     100%{样式}

                                                     }

百分数:0~100,一次动画时间中占总时间的百分数




(2)执行动画

                          animation-name:动画片段名称

                          animation-duration:一次动画的时间

                          animation-iterration-count:动画执行的次数

                                                                    infinite:无数次

                          animation-direction:动画执行的方向
                                                         normal:正常     从 from到 to

                                                         reverse:反向    从 to 到 from

                                                         alternate: 正反向,交替来回执行,从                                                                                   from 到 to , to 到 from

                                                         alternate-reverse: 从 to 到 from ,从 from                                                              到 to

                        animation-timing-function:动画执行的速度函数

                                                           linear,ease-in,ease-out,ease-in-out,ease

                        animation-play-state:动画执行的状态

                                                          running:执行动画

                                                          paused:暂停动画

                        简写:

                       animation:name  duration  delay  iteration-count  timing-function                                          play-state   direction

                       注意:不能省略name和duration

                      animation:动画信息项,动画信息项,动画信息项……

                      可以同时播放多个动画片段

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,013评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,205评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,370评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,168评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,153评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,954评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,271评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,916评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,382评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,877评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,989评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,624评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,209评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,199评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,418评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,401评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,700评论 2 345

推荐阅读更多精彩内容