<!DOCTYPE html>
<html lang="en" xmlns:v-on="http://www.w3.org/1999/xhtml" xmlns:v-bind="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>
<body>
<div id="demo">
<button v-on:click="show =! show">Toggle</button>
<transition name="fade">
<p v-if="show">hello</p>
</transition>
</div>
<script>
/*Vue.component('transition',{
template:'<div class="fade-enter"></div>'
})*/
new Vue({
el:'#demo',
data:{
show:true
}
})
</script>
<style>
.fade-enter-active, .fade-leave-active {
transition: opacity .5s;
}
.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {
opacity: 0;
}
</style>
<!--------------------------------------------------------------------------------------->
<div id="example-1">
<button @click="show = !show">
Toggle render
</button>
<transition name="slide-fade">
<p v-if="show">hello</p>
</transition>
</div>
<script>
new Vue({
el:'#example-1',
data:{
show:true
}
})
</script>
<style>
/* 可以设置不同的进入和离开动画 */
/* 设置持续时间和动画函数 */
.slide-fade-enter-active {
transition: all .3s ease;
}
.slide-fade-leave-active {
transition: all .8s cubic-bezier(1.0, 0.5, 0.8, 1.0);
}
.slide-fade-enter, .slide-fade-leave-to
/* .slide-fade-leave-active for below version 2.1.8 */ {
transform: translateX(10px);
opacity: 0;
}
</style>
<!--------------------------------------------------------------------------------------->
<div id="example-2">
<button @click="show =! show">Toggle show</button>
<transition name="bounce">
<p v-if="show">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris facilisis enim libero, at lacinia diam fermentum id. Pellentesque habitant morbi tristique senectus et netus.</p>
</transition>
</div>
<script>
new Vue({
el: '#example-2',
data: {
show: true
}
})
</script>
<style>
.bounce-enter-active {
animation: bounce-in .5s;
}
.bounce-leave-active {
animation: bounce-in .5s reverse;
}
@keyframes bounce-in {
0% {
transform: scale(0);
}
50% {
transform: scale(1.5);
}
100% {
transform: scale(1);
}
}
</style>
<!------------------------------------------------------------------------------------------------------->
<link href="https://cdn.jsdelivr.net/npm/animate.css@3.5.1" rel="stylesheet" type="text/css">
<div id="example-3">
<button @click="show =! show">
Toggle render
</button>
<transition
name="custom-classes-transition"
enter-active-class="animated tada"
l
vue 几个过渡效果的代码
最新推荐文章于 2024-07-04 15:19:20 发布
本文展示了多个使用 Vue 的过渡效果示例,包括淡入淡出(fade)、滑动(slide-fade)、弹跳(bounce)、自定义动画类(custom-classes)、Velocity 动画、组件过渡(component-fade)、列表过渡(list)以及复杂动画效果(如 staggered-list 和 dynamic-fade)。通过这些示例,读者可以了解如何在 Vue 中实现不同类型的过渡和动画效果。
摘要由CSDN通过智能技术生成