操作元素时有个过渡或动画的效果(渐变和移动的效果和放大缩小的效果)

过渡:trasition

动画:animation

1.vue动画的理解

1)操作css的trasition或animation(它本身不是传动画)

2)vue会给目标添加/移除特定的class

3)过渡相关的类名

  xxx-enter-active:制定显示的transition

  xxx-leave-acttive:指定隐藏的transition

  xxx-enter/xxx-leave-to:指定隐藏式的样式

1.test014(1).html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
/*显示/隐藏时的过渡效果*/
.xxx-enter-active,.xxx-leave-active{
transition: opacity 1s;
}
/*隐藏时的样式*/
.xxx-enter,.xxx-leave-to{
opacity: 0;
} /*显示时的过渡效果*/
/*改变多个时写all,然后再指定*/
.move-enter-active{
transition: all 1s;
}
/*隐藏时的过渡效果*/
.move-leave-active{
transition: all 3s;
}
/*隐藏时的样式*/
.move-enter,.move-leave-to{
opacity: 0;
/*在水平方向移动,向右边移动,所以是正值20px*/
transform: translateX(20px);
}
</style>
</head>
<body>
<div id="test1">
<button @click="isShow=!isShow">toggle</button>
<transition name="xxx">
<p v-show="isShow">hello</p>
</transition>
</div> <div id="test2">
<button @click="isShow=!isShow">toggle</button>
<transition name="move">
<p v-show="isShow">hello</p>
</transition>
</div>
<script type="text/javascript" src="../js/vue.js"></script>
<script type="text/javascript">
new Vue({
el:'#test1',
data(){
return{
isShow:true
}
}
}) new Vue({
el:'#test2',
data(){
return{
isShow:true
}
}
})
</script>
</body>
</html>
2.test014(2).html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title> <style>
/*进入过程动画*/
.bounce-enter-active{
animation: bounce-in .5s;
}
/*离开过程动画*/
.bouce-leave-active{
/*reverse反过来*/
animation: bounce-in .5s reverse;
}
/*具体使用哪个animation*/
@keyframes bounce-in {
/*x%为时间;scale(1.5),1.5为放大1.5倍;*/
0%{
transform:scale(0);
}
50%{
transform:scale(1.5);
}
100%{
transform:scale(1);
}
}
</style>
</head>
<body>
<div id="example-2">
<button @click="show=!show">Toggle show</button>
<br>
<transition name="bounce">
<!--display: inline-block不加这个会占一整行,加了就会缩小至当前文字-->
<p v-if="show" style="background: red;display: inline-block">吾乃常山赵子龙也!!!</p>
</transition>
</div> <script type="text/javascript" src="../js/vue.js"></script>
<script type="text/javascript">
new Vue({
el:'#example-2',
data:{
show:true
}
})
</script>
</body>
</html>

3.总结:

基本过渡动画的编码步骤:

1)在目标元素外包裹<transition name="xxx">

2)定义class样式

指定过渡样式transition

指定隐藏时样式:opacity/其他

(尚014)Vue过渡与动画的更多相关文章

  1. Vue过渡和动画效果展示(案例、GIF动图演示、附源码)

    前言 本篇随笔主要写了Vue过渡和动画基础.多个元素过渡和多个组件过渡,以及列表过渡的动画效果展示.详细案例分析.GIF动图演示.附源码地址获取. 作为自己对Vue过渡和动画效果知识的总结与笔记. 因 ...

  2. Vue过渡与动画

    通过 Vue.js 的过渡系统,可以在元素从 DOM 中插入或移除时自动应用过渡效果.Vue.js 会在适当的时机为你触发 CSS 过渡或动画,你也可以提供相应的 JavaScript 钩子函数在过渡 ...

  3. 9、VUE过渡和动画

    1.过渡效果 Vue提供了transition的封装组件,在下列情形中,可以给任何元素和组件添加entering/leaving过渡. 我们注意到,<transition>标签的标记是 n ...

  4. 四、Vue过渡与动画、过渡css类名、自定义指定、过滤器

    一.过渡 动画 1.1简单的过渡动画使用 parent.vue [0]定义一个待显示的数据 [1]定义一个显示隐藏flag [2]使用动画过滤标签,name用来连接style样式:v-show用来控制 ...

  5. vue过渡动画

    概述 Vue 在插入.更新或者移除 DOM 时,提供多种不同方式的应用过渡效果.包括以下工具: 在 CSS 过渡和动画中自动应用 class 可以配合使用第三方 CSS 动画库,如 Animate.c ...

  6. Vue过渡动画—Vue学习笔记

    要求:要通过Vue使用过渡动画我们要把需要过度的元素放在<transition name='变量名'></transition>中. 原理:通过在特定的时刻增加/移除样式实现. ...

  7. Vue——关于css过渡和动画那些事

    1. 单元素/组件的过渡transition Vue 提供了 transition 的封装组件,在下列情形中,可以给任何元素和组件添加进入/离开过渡 条件渲染 (使用 v-if) 条件展示 (使用 v ...

  8. vue过渡动画效果

    1 过渡基础 1.1 过渡的方式 Vue 在插入.更新或者移除 DOM 时,提供多种不同方式的应用过渡效果. 包括以下工具: 在 CSS 过渡和动画中自动应用 class 可以配合使用第三方 CSS ...

  9. vue过渡 & 动画---进入/离开 & 列表过渡

    (1)概述 Vue 在插入.更新或者移除 DOM 时,提供多种不同方式的应用过渡效果.包括以下工具: 在 CSS 过渡和动画中自动应用 class 可以配合使用第三方 CSS 动画库,如 Animat ...

随机推荐

  1. day38——线程queue、事件event、协程

    day38 线程queue 多线程抢占资源 只能让其串行--用到互斥锁 线程queue 队列--先进先出(FIFO) import queue q = queue.Queue(3) q.put(1) ...

  2. SpringCloud之Zuul网关简介、映射vs过滤配置使用

    目的: Zuul路由网关简介及基本使用 Zuul路由映射配置 Zuul请求过滤配置 Zuul路由网关简介及基本使用 Zuul简介: Zuul是从设备和网站到Netflix流应用程序后端的所有请求的前门 ...

  3. subprocess.popen.kill杀死所有子进程

    一.使用subprocess模块 使用subprocess模块可创建子进程. subprocess. Popen ( args , bufsize=0 , executable=None , stdi ...

  4. Atcoder Grand Contest 036 D - Negative Cycle

    Atcoder Grand Contest 036 D - Negative Cycle 解题思路 在某些情况下,给一张图加或删一些边要使图合法的题目要考虑到最短路的差分约束系统.这一题看似和最短路没 ...

  5. c# 基于RTMP推流 PC+移动端 拉流播放

    网上关于直播相关的文章很多,但是讲解还是不够系统,对于刚刚接触直播开发的朋友实施起来会浪费不少时间.下面结合我自己的经验, 介绍一下直播方面的实战经验. 分成两个部分 第一部分是标题中介绍的基于RTM ...

  6. JS权威指南读书笔记(四)

    第十章 正则表达式 1 正则表达式直接量定义为包含在一对斜杠(/)之间的字符     a /s$/ == new RegExp("s$") 2 直接量字符:所有字母和数字都是按照字 ...

  7. MySQL5.7.16安装及配置

    一.下载 下载页面http://dev.mysql.com/downloads/mysql/ 选择系统平台后,点击download(根据系统选择64或32位) 二.配置 1.下载成功后,解压安装包到要 ...

  8. 将h5用HBuilderX打包成安卓app后,document.documentElement.scrollTop的值始终为0或者document.body.scrollTop始终为0

    let time = setInterval(() => { let scroll = document.documentElement.scrollTop || document.body.s ...

  9. git 出现 fatal: remote origin already exists 错误

    当输入$ git remote add origin git@github.com:djqiang(github帐号名)/gitdemo(项目名).git 出现 如下错误: 解决办法如下: 1.先输入 ...

  10. dota2从窗口模式切换到独占全屏模式后黑屏解决办法

    在dota2安装目录中查找video.txt,修改setting.defaultres与setting.defaultresheight两个参数与显示器的分辨率相同. 修改setting.fullsc ...