过渡效果

transition 是Vue 提供的封装组件。css

条件渲染(使用v-if)、条件展现(使用 v-show)、动态组件、组件根节点函数

当插入或删除包含在transition 组件元素时,Vue 将会作如下处理:动画

1. 自动嗅探目标元素是否应用了CSS 过分或动画,若是是,在恰当的时机添加/删除CSS 类名。spa

2. 若是过分组件提供了JavaScript 钩子函数,这些钩子函数将恰当的时机被调用。3d

3. 若是没找到JavaScript 钩子而且也没有监测到CSS 过渡/动画,DOM 操做(插入/删除)在下一帧中当即执行。code

过渡的-CSS-类名orm

<transition name="my-transition"> //可重置前缀

 1         /*     v-enter:定义进入过渡的开始状态。在元素被插入时生效,在下一个帧移除;
 2             v-enter-active:定义过渡的状态。元素整个过渡过程当中做用,在元素被插入时生效
 3             v-enter-to 定义进入过渡的结束状态
 4         */
 5         .test-enter,.test-enter-active,.test-enter-to{
 6             transition:opacity 1s; background: green
 7         }
 8         /*  v-leave:定义来开过渡的开始状态。
 9             v-leave-active:定义过渡的状态
10             v-leave-to 定义离开过渡的状态
11         */
12         .test-leave,.test-leave-active,.test-leave-to{
13             transition:opacity 2s; background: yellow
14         }

CSS 过渡blog

 1     .test-enter-active{
 2         transition: all 0.5s linear
 3     }
 4     
 5     .test-leave-active{
 6         transition: all 0.5s linear
 7     }
 8     .test-enter, .test-leave-to{
 9         transform: translateX(100px);
10         opacity: 0;
11     }

CSS 动画ip

 1     .test-enter-active{
 2         animation: test-in .5s;
 3     }
 4     .test-leave-active{
 5         animation: test-in .5s reverse
 6     }
 7     @keyframes test-in{
 8         0%{
 9             transform:scale(0);
10         }
11         50%{
12             transform: scale(1.5);
13         }
14         100%{
15             transform: scale(1)
16         }
17     }

自定义过渡类名ci

经过自定义过渡类名,优先级高于普通类名。对于Vue 的过渡系统和其余第三方CSS 动画库,如Animate.css 结合使用很是有用。

 

 

enter-class enter-active-class enter-to-class
leave-class leave-active-class leave-to-class
        <transition name="test" enter-active-class="animated tada" leave-active-class="animated bounceOutRight">

显性的过渡效果持续时间

<transition name="test"  :duration="{enter:500,leave:800}">

JavaScript 钩子

相关文章
相关标签/搜索