动画
定义一个动画
@keyframes animationName{
0%{
/* 动画开始的样式表 */
opacity: 0;
}
100%{
/* 动画结束的样式表 */
opacity: 1;
}
}
添加动画
.div{
/* 使用动画开始的样式表 */
opacity: 0;
/* 动画名称 */
animation-name: animationName;
/* 过渡时间 */
animation-duration: .3s;
/* 保持动画结束状态 */
animation-fill-mode: forwards;
/* 缓动动画 */
animation-timing-function: ease-in-out;
}
/* 也可以这样写 */
.div{
opacity: 0;
animation: animationName .3s forwards ease-in-out;
}
动画延迟
.div{
/* 延迟1秒实现动画 */
animation-delay: 1s;
/* ...实现动画 */
}
备注
对于非固定时间展示动画(例如点击按钮实现的动画)可以使用transition
来实现:
.div{
transition: all .3 ease-in-out;
}
使用其它框架修改其style,例如Vue
<template>
<div>
<div @click="showAnimation">按钮</div>
<div class="div" ref="box"></div>
</div>
</template>
<script>
export default {
methods: {
showAnimation(){
this.$refs.box.style.opacity=1;
}
}
}
</script>
<style scoped>
.div{
opacity: 0;
background-color: red;
transition: all .3 ease-in-out;
}
</style>