vue Transition动画使用

本文介绍了一个使用Vue.js实现的简单示例,通过按钮切换显示隐藏文本,并使用CSS过渡效果来平滑地呈现变化过程。该示例利用Vue.js的<transition>组件和条件渲染特性,结合CSS定义过渡动画。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


<div id="example-1" class="demo">
  <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 {
  transform: translateX(10px);
  opacity: 0;
}
</style>

具体参考文档:
https://cn.vuejs.org/v2/guide/transitions.html#CSS-过渡

Vue.js提供了一个名为`<transition>`的组件,用于实现过渡动画效果。您可以在Vue组件的模板中使用`<transition>`组件来包裹要添加动画的元素。 下面是一个简单的例子,展示了如何使用`<transition>`组件实现一个简单的淡入淡出效果: ```html <template> <div> <button @click="show = !show">Toggle</button> <transition name="fade"> <p v-if="show">Hello Vue!</p> </transition> </div> </template> <script> export default { data() { return { show: false }; } }; </script> <style> .fade-enter-active, .fade-leave-active { transition: opacity 0.5s; } .fade-enter, .fade-leave-to { opacity: 0; } </style> ``` 在上述代码中,我们使用了`<transition>`组件将要添加动画的`<p>`元素包裹起来。通过控制`show`属性的值,我们可以在"Toggle"按钮的点击事件中切换`<p>`元素的显示与隐藏。 同时,我们还定义了一些CSS类名来定义过渡动画的效果。在这个例子中,我们使用了名为"fade"的过渡名称,并定义了两对CSS类名,分别是`.fade-enter-active`和`.fade-leave-active`以及`.fade-enter`和`.fade-leave-to`。这些类名可以通过CSS属性来指定动画效果,比如这里使用了`transition`属性来指定`opacity`的过渡效果。 当`<p>`元素出现时,会触发`.fade-enter-active`和`.fade-enter`类名,从而实现淡入效果;当`<p>`元素消失时,会触发`.fade-leave-active`和`.fade-leave-to`类名,从而实现淡出效果。 您可以根据自己的需求定制更多的过渡效果,比如缩放、位移等。更多关于Vue.js过渡动画的详细用法,请参考Vue.js官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值