这篇文章主要介绍CSS制作动画常用技巧有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、小程序制作、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了文登免费建站欢迎大家使用!
transition
CSS 中有一个transition
属性,能够监听某个 CSS 属性的变化,通过属性变化的控制,实现简单的动画效果:
transition CSS 属性是 transition-property,transition-duration,transition-timing-function 和 transition-delay 的一个简写属性。
html代码
Document
动画效果点击此处查看 地址https://codepen.io/wjq990112/pen/PoqEemX
体验完了,现在来具体讲一下用法:
css代码
transition: transition-property | transition-duration |
transition-timing-function | transition-delay;
这样写你们估计看不懂,我们一条一条来拆解:
css代码
transition-property: background; /* 任何你需要侦听变化的 CSS 属性 */
transition-duration: 1s; /* 设定过渡动画的时长 */
transition-timing-function: ease-in-out; /* 设定过渡动画的效果 */
transition-delay: 0.2s; /* 设定触发动画的延迟 */
而transition
属性就是由上面的 4 条 CSS 属性组合而成。
第一第二个属性是必须项,用于指定侦听需要添加过渡动画的属性以及指定动画时长。
第三第四个属性为可选项,用于设定过渡动画的效果和延迟。
transition-timing-function的可选值详见
https://developer.mozilla.org/zh-CN/docs/Web/CSS/transition-timing-function
第一个属性还有 2 个特殊值:none:不对任何属性进行侦听 all:对所有属性进行侦听并为其添加过渡动画。
当省略第三个属性时,第二个时间项会被自动解析为动画效果延迟。
干说还是有点难理解,举个栗子吧:
css代码
transition: background 1s ease-in-out 0.2s;
上面这个例子,就是前面的代码中的一部分。
意思是侦听background
的变化,为其添加 1 秒的过渡动画,过渡动画的效果是慢开始慢结束,并在属性变化 0.2 秒后才开始执行。
那么上面代码中的这一段:
css代码
.box {
width: 200px;
height: 50px;
line-height: 50px;
text-align: center;
color: #fff;
background: #000;
border-radius: 4px;
/* 使用 transition 侦听 CSS 属性变化 为其加上动画 */
transition: background 1s ease-in-out 0.2s, color 3s, width 5s;
}
.box:hover {
width: 400px;
color: #000;
background: #fff;
}
代码中的transition
属性分别为background``color``width
加上了过渡动画,当class=box
的标签的这三个属性发生变化时,就回自动为其加上默认或指定的动画效果。
接下来我们就用它来做一些进阶的用法:
在实现动画的过程中,可能会需要使用一种常用的方式:overflow
障眼法。
用于实现一些类似Tab
切换的效果:
html代码
Document