在vue中实现过渡动画,需要用到transition把需要被动画控制的元素包裹起来
-
<div id="demo">
-
<button v-on:click="show = !show">
-
Toggle
-
</button>
-
<transition name="fade">
-
<p v-if="show">hello</p>
-
</transition>
-
</div>
-
-
new Vue({
-
el: '#demo',
-
data: {
-
show: true
-
}
-
})
-
//fade-enter 这是一个时间点,是进入之前元素的起始状态,此时还没有进入
-
//fade-leave-to 是动画离开之后,离开的终止状态,此时元素动画已经结束
-
.fade-enter, .fade-leave-to {
-
opacity: 0;
-
}
-
//fade-enter-active入场动画的时间段
-
//fade-leave-active 离场动画的时间段
-
.fade-enter-active, .fade-leave-active {
-
transition: opacity .5s;
-
}