<div id="root">
<button @click="handleClick">切换</button>
<transition name="fade">
<div v-show="show">hello world</div>
</transition>
</div>
.fade-enter{
/*第一帧,opacity是0,第二帧开始被移除,即变成1,*/
opacity: 0
}
.fade-enter-active{
/*当监控到opacity变化的时候(即从0到1),给2s的过渡*/
transition: opacity 1s;
}
.fade-leave-to{
/*首先,opacity是1,离开的第二帧变成0,*/
opacity: 0
}
.fade-leave-active{
/*当监控到opacity变化的时候(即从1到0),给2s的过渡*/
transition: opacity 1s;
}
/*简化代码*/
/*
.fade-enter,
.fade-leave-to{
opacity: 0;
}
.fade-enter-active,
.fade-leave-active{
transition: opacity 2s;
}
*/
var vm = new Vue({
el: '#root',
data: {
show: true
},
methods: {
handleClick() {
this.show = !this.show
}
}
})
This Pen doesn't use any external CSS resources.