CSS动画知识点

简介: CSS动画知识点

一、什么是css动画?


1、使⽤css技术来控制⻚⾯元素 css属性 的变化。


2、css动画优势:不需要⽤js也能写,⽐较流畅,由浏览器去执⾏动画,减少代码量,性能⽐较⾼


3、⼀般兼容到ie10以上浏览器(⼀般没太⼤问题)


二、过渡


1.过渡的理解


过渡(transition)[træn'siʒǝn]


      -通过过渡可以指定⼀个属性发⽣变化时的切换⽅式,平滑的过渡


      -需要在某种条件下触发,例如hover、active、focus情况下


       -⼀次性的效果,不能循环,只能做简单的动画


       -只有两帧,设置动画初始值和结束值


       -IE10开始兼容,移动端兼容良好


2.过渡的4个属性


1、transition-property


哪些属性要过渡(选 填)



none 没有属性获得过 渡效果


all 所有属性都参与过 渡 默认值


property ⾃定义应⽤ 过渡效果,⼀个或多 个,⽤空格隔开


注意:


1、所有 数值类型 的属 性,都可以参与过渡, ⽐如width、height、 left、top、border,radius、opacity等


2、从⼀个有效数值 向另⼀个有效数值进⾏ 过渡


2、transition-duration


指定过渡效果的持续时 间(必填)



时间的单位:s和ms ,1s=1000ms


3、 transition-timingfunction


过渡变化曲线(缓动效 果)(选填)



ease [i:z] 默认值,慢速开始,先加速,然后 再减速


linear 匀速运动 ease-in 先慢后快 加 速运动 ,ease-out 先快后慢 减 速运动 ,ease-in-out 以慢速开 始和结束的过渡效果


steps()分布执⾏过渡 效果


cubic-bezier(n,n,n,n) ⽴⽅⻉塞尔曲线函数, 值是0-1之间的数值




4、transition-delay


过渡效果的延迟,等待 ⼀段时间后执⾏过渡 (选填)


时间的单位:s和ms ,1s=1000ms


5、transition


同时设置过渡相关的所 有属性 (选填,过渡时间 是必写)


只有⼀个要求,如果要 写延迟, 则两个时间中,第⼀ 个写过渡时间,第⼆个 写延迟时间.


三、动画


1.动画的理解


动画和过渡类似,都是可以实现⼀些动态效果,不同的是过渡需要在某个属性发⽣变化时才能触发, 例如hover,acitve时,动画可以⾃动触发动画.


第⼀步:先要设置⼀个关键帧,关键帧设置了动画每⼀个步骤


制定关键帧⽤的是@keyframes属性,指定关键帧主要有两种⽅法:


⽅法⼀:


@keyframes 关键帧名称{


from{初始状态属性}


to{结束状态属性}}


⽅法⼆:


@keyframes 关键帧名称{


0%{初始状态属性}


50%(中间还可以再添加关键帧)


100%{结束状态属性}


注意:


1、帧的顺序可以更改,不关顺序问题。如果初始帧不写,默认是原始设置,如果结束帧不写, 默认也是原始设置


2、可以同时设置关键帧,⽤逗号(,)隔开就⾏





第⼆步 调⽤关键帧



2.动画属性  


1、animation-name


绑定到选择器的关键帧 的名称,告诉系统需要 执⾏哪个动画 (必填)


2、animation-duration


动画的完成时间,告诉 系统动画持续的时长 (必填)


animation-timingfunction


设置动画如何完成一个 周期,告诉系统动画执 行的速度(与过度动画 类型)


3、animation-delay


动画在启动前的延迟间 隔


4、animation-iterationcount


动画的播放次数,告诉 系统动画需要执行几次


5、animation-direction


指定是否应给轮流反向 播放动画


6、animation-fill-mode


规定当动画不播放时 (完成时,延时未开始 播放时),应用到的元 素样式


7、animation-play-state


告诉系统当前动画是否 需要暂停


8、animation


简写,可以写以上任意 属性的可选值


animation: 关键帧的名 称 动画持续的时间 运 动状态(linear( 匀速 )) 动 画延迟的时间 动画的循环次数 动画的运动⽅式 ( 设置正向或者反向 )


四、变形2D


1、变形的理解


变形属性 transform :


变形不会影响到⻚⾯的布局(只折腾⾃⼰)


尽量变形写在⼀个transform⾥,不然下⾯再写⼀个,就会覆盖上⾯


可选值:


位移 —translate()


缩放 —scale()


旋转 —rotate()


倾斜 —skew()


2、位移 transform:translate();


   translate( 参数1,参数2 ) 参数 值 1 是指在 x 轴上移动的距离 , 正值,元素向右移动,负值向左移 动,参 数2 是指在 y 轴上移动的距离,正值向下,负值向上,参数 2 默认为 0


       translateX()沿着x轴⽅向平移


       translateY()沿着y轴⽅向平移


      translateZ()沿着z轴⽅向平移 结合视距起作⽤. 不能是百分⽐数值( 3d 变化)


注意:


1、平移元素,可以是数字,可以是百分⽐,百分⽐是相对于 ⾃身计算 的, x 轴往右为正, y 轴往下为正,反之 为负


2 、位移的参考原点是元素的原来所处的位置


3 、如果是通过 active 进⾏位移,执⾏完毕后会还原


4 、 不会影响别的元素


5 、对于⾏内元素是没有效果的

相关文章
|
25天前
|
前端开发 搜索推荐 UED
实现 CSS 动画效果的兼容性
【10月更文挑战第16天】实现 CSS 动画效果的兼容性需要对不同浏览器的特性有深入的了解,并采取适当的策略和方法。通过不断的实践和优化,你可以在各种浏览器上创造出流畅、美观且兼容的动画效果,为用户带来更好的体验。在实际开发中,要密切关注浏览器的发展动态,及时掌握最新的兼容性技巧和解决方案,以确保你的动画设计能够在广泛的用户群体中得到良好的呈现。
100 58
|
12天前
|
移动开发 前端开发 JavaScript
[HTML、CSS]知识点
本文涵盖前端知识点扩展、HTML标签(如video、input、canvas)、datalist和details标签的使用方法,以及CSS布局技巧(如margin、overflow: hidden和动态height)。文章旨在分享作者的学习经验和实用技巧。
26 1
[HTML、CSS]知识点
|
3天前
|
Web App开发 前端开发 JavaScript
如何在不牺牲动画效果的前提下,优化 CSS3 动画的性能?
如何在不牺牲动画效果的前提下,优化 CSS3 动画的性能?
10 1
|
21天前
|
前端开发
CSS网页布局综合练习(涵盖大多CSS知识点)
CSS网页布局综合练习(涵盖大多CSS知识点)
|
21天前
|
前端开发
CSS网页布局综合练习(涵盖大多CSS知识点)
CSS网页布局综合练习(涵盖大多CSS知识点)
|
29天前
|
前端开发 JavaScript API
探索 CSS Houdini:轻松构建酷炫的 3D 卡片翻转动画
本文通过构建一个 3D 翻卡动画深入探讨了 CSS Houdini 的强大功能,展示了如何通过 Worklets、自定义属性、Paint API 等扩展 CSS 的能力,实现高度灵活的动画效果。文章首先介绍了 Houdini 的核心概念与 API,并通过构建一个动态星空背景、圆形进度条以及交互式 3D 翻卡动画的实际示例,展示了如何利用 CSS Houdini 赋予网页设计更多创造力。最后,还演示了如何将这种 3D 翻卡效果集成到公司网站中,提升用户体验。CSS Houdini 的创新能力为网页设计带来了前所未有的灵活性,推动了前端开发迈向新的高度。
26 0
探索 CSS Houdini:轻松构建酷炫的 3D 卡片翻转动画
|
2月前
|
JavaScript 前端开发
JS配合CSS3实现动画和拖动小星星小Demo
本文通过代码示例展示了如何使用JavaScript和CSS3实现动画效果和拖动小星星的交互效果,包括文字掉落动画和鼠标拖动产生小星星动画的实现方法。
45 0
JS配合CSS3实现动画和拖动小星星小Demo
|
1月前
|
前端开发
CSS 动画介绍及语法
CSS 动画介绍及语法
27 0
|
1月前
|
前端开发 容器
CSS弹性盒子知识点
CSS弹性盒子知识点
|
2月前
|
Web App开发 前端开发 JavaScript
「offer来了」1张思维导图,6大知识板块,带你梳理面试中CSS的知识点!
该文章通过一张思维导图和六大知识板块系统梳理了前端面试中涉及的CSS核心知识点,包括CSS框架、基础样式问题、布局技巧、动画处理、浏览器兼容性及性能优化等方面的内容。