VUE3 之 使用标签实现动画与过渡效果 - 这个系列的教程通俗易懂,适合新手
1. 概述
巴纳姆效应告诉我们:
人们更容易相信笼统的、常见的人格描述,并觉得特别适合自己,认为该描述真实地反映了自己的人格面貌。
这也是所有算命先生的小把戏,算命先生通常把话说的很笼统,很通用,基本是适合所有人的,再加上一些察言观色、随机应变的技巧,不明状况的人就会盲目的相信,觉得很“神”。
我们要学会正确的面对自己,增强自己的判断能力,才能做到真正的了解自己。
言归正传,今天我们来聊聊如何使用标签实现动画与过渡效果。
2.使用标签实现动画与过渡效果
2.1 普通的显示和隐藏
<body>
<div id="myDiv"></div>
</body>
<script>
const app = Vue.createApp({
data(){
return {
show : false
}
},
methods : {
myClick() {
this.show = !this.show;
}
},
template:`
<div>
<div v-if="show">hello world</div>
<button @click="myClick">切换</button>
</div>
`
});
const vm = app.mount("#myDiv");
这是一个简单的例子,我们利用之前学过的 v-if 来简单实现 div 元素显示和隐藏的效果。接下来我们来给这个div元素加上动画和过渡效果。
2.2 标签 + 固定样式实现动画与过渡效果
<style>
@keyframes leftRight {
/* 进度为 X% 时,元素的横坐标位置 */
0% {
transform: translateX(0px);
}
33% {
transform: translateX(-100px);
}
66% {
transform: translateX(100px);
}
100% {
transform: translateX(0px);
}
} /* 居中 */
.center {
text-align: center;
} /* 入场起始样式 */
.v-enter-from {
opacity: 0; /* 透明度 */
}
/* 入场过渡效果 */
.v-enter-active {
transition: 3s opacity ease-in;
animation : leftRight 4s;
}
/* 入场结束样式 */
.v-enter-to {
opacity: 1;
} /* 出场起始样式 */
.v-leave-from {
opacity: 1; /* 透明度 */
}
/* 出场过渡效果 */
.v-leave-active {
transition: 3s opacity ease-out;
animation : leftRight 4s;
}
/* 出场结束样式 */
.v-leave-to {
opacity: 0;
}
</style>
const app = Vue.createApp({
data(){
return {
show : false
}
},
methods : {
myClick() {
this.show = !this.show;
}
},
template:`
<div class="center">
<transition>
<div v-if="show">hello world</div>
</transition>
<button @click="myClick">切换</button>
</div>
`
});
这个例子中我们使用 transition 标签包裹在 div 外面,然后在样式中,使用了固定的 v-enter-from、v-enter-active、v-enter-to、v-leave-from、v-leave-active、v-leave-to 等样式描述了动画和过渡效果。
2.3 自定义样式名称
如果我们不想把样式名称固定,可以这样去写
/* 入场起始样式 */
.myTransition1-enter-from {
opacity: 0; /* 透明度 */
}
/* 入场过渡效果 */
.myTransition1-enter-active {
transition: 3s opacity ease-in;
animation : leftRight 4s;
}
/* 入场结束样式 */
.myTransition1-enter-to {
opacity: 1;
} /* 出场起始样式 */
.myTransition1-leave-from {
opacity: 1; /* 透明度 */
}
/* 出场过渡效果 */
.myTransition1-leave-active {
transition: 3s opacity ease-out;
animation : leftRight 4s;
}
/* 出场结束样式 */
.myTransition1-leave-to {
opacity: 0;
}
const app = Vue.createApp({
data(){
return {
show : false
}
},
methods : {
myClick() {
this.show = !this.show;
}
},
template:`
<div class="center">
<transition name="myTransition1">
<div v-if="show">hello world</div>
</transition>
<button @click="myClick">切换</button>
</div>
`
});
我们可以在 transition 标签上加上 name 属性,然后把刚才所有样式中开头的 v 替换成 name 的值即可。
3. 综述
今天聊了一下 VUE3 中使用标签实现动画与过渡的效果,希望可以对大家的工作有所帮助,下一节我们继续讲 Vue 中 动画 的相关知识,敬请期待
欢迎帮忙点赞、评论、转发、加关注 :)
关注追风人聊Java,这里干货满满,都是实战类技术文章,通俗易懂,轻松上手。
4. 个人公众号
追风人聊Java,欢迎大家关注
VUE3 之 使用标签实现动画与过渡效果 - 这个系列的教程通俗易懂,适合新手的更多相关文章
- VUE3 之 使用标签实现动画与过渡效果(下) - 这个系列的教程通俗易懂,适合新手
1. 概述 毛毛虫效应: 有这样一个实验,将许多毛毛虫放在一个花盆边缘,使它们首尾相接,围成一个圈.然后在离花盆很近的地方撒了一些毛毛虫的食物. 此时,毛毛虫并不会向食物的方向爬去,而是在花盆边缘,一 ...
- VUE3 之 多个元素之间的过渡 - 这个系列的教程通俗易懂,适合新手
1. 概述 老话说的好:过去不等于未来,过去成功了不代表将来也会成功,过去失败了也不代表将来也会失败. 言归正传,今天我们聊聊多个元素之间的过渡. 2. 多个元素之间的过渡 2.1 两个元素交替显示 ...
- VUE3 之 使用 Mixin 实现代码的复用 - 这个系列的教程通俗易懂,适合新手
1. 概述 老话说的好:舍得舍得,先舍才能后得. 言归正传,今天我们来聊聊 VUE 中使用 Mixin 实现代码的复用. 2. Mixin 的使用 2.1 不使用 Mixin 的写法 <body ...
- VUE3 之 全局 Mixin 与 自定义属性合并策略 - 这个系列的教程通俗易懂,适合新手
1. 概述 老话说的好:心态决定命运,好心态才能有好的命运. 言归正传,今天我们来聊聊 VUE 中的全局 Mixin 与 自定义属性合并策略. 2. Mixin 的使用 2.1 全局 Mixin 之前 ...
- VUE3 之 列表动画 - 这个系列的教程通俗易懂,适合新手
1. 概述 老话说的好:可以为别人解决痛点的产品就是好产品. 言归正传,今天我们来聊聊 VUE 的列表动画. 2. 列表动画 2.1 列表中增加和删除元素 <style> .my-ite ...
- VUE3 之 动画与过渡的实现 - 这个系列的教程通俗易懂,适合新手
1. 概述 光环效应告诉我们: 当一个人在某一方面取得了巨大的成功,人们就会给他贴上正面的标签,这个人从此就被"优秀"的光环所笼罩,他做的一切,人们都认为是正确的. 例如:越是名气 ...
- VUE3 之 状态动画 - 这个系列的教程通俗易懂,适合新手
1. 概述 老话说的好:不用羡慕别人,每个人都有属于自己的人生道路,重要的是在前进道路上遇见阻碍时,如何去积极的面对并解决. 言归正传,今天我们来聊聊 VUE 的状态动画. 2. 状态动画 2.1 数 ...
- VUE3 之 插槽的使用 - 这个系列的教程通俗易懂,适合新手
1. 概述 非理性定律告诉我们: 人们总是习惯于以情感去判断眼前的事物,非理性的去做决定. 对于长远的利益,人们更愿意去选择短期的利益. 因此在做决定前要让自己冷静,理性的分析,让自己看的更远. 言归 ...
- VUE3 之 作用域插槽 - 这个系列的教程通俗易懂,适合新手
1. 概述 破窗效应告诉我们: 当一个建筑物窗户的玻璃完好无损时,很少有人想去破坏它,当有一个人破坏了一块窗户的玻璃,其他窗户的玻璃也很快会被人破坏. 同理,一个很干净的地方,人们不好意思去丢垃圾,但 ...
随机推荐
- 技巧02--Terminal Preview优化
0x00 下载安装 可在MS应用商店安装,也可以直接百度下载安装包安装 0x01 设置默认自启 0x02 Terminal Preview美化 1.打开终端settings 2.点击这个Open JS ...
- java输入年份和月份,输出天数
import java.util.*; public class Demo { public static void main(String[] args){ int days = 0; Scanne ...
- python15day
昨日回顾 装饰器:完美的呈现了开放封闭原则.本质:闭包. def wrapper(f): def inner(*args,**kwargs): '''在执行被装饰函数之前,想写什么代码写什么代码''' ...
- Homework_3 (完整版)
划水♂️!好耶! 果然还是逃不过作业,初三刚过就要营业 审题 爬虫+算法:划水中的员工 员工 A 此刻内心一酸,大年初一加班惨绝人寰,情不自禁打开 B 站,跟着网友一起划水看番. 但是由于技术故障原 ...
- Xmind8破解教程
Windows下Xmind8破解教程 破解步骤: 1. 首先去xmind国外官网下载对应操作系统的安装包,国内官网的那个是有残缺的,不支持破解. 点击打开链接 通过zip格式下载,别下载exe,不然找 ...
- Java-方法的递归调用
方法的递归是指在一个方法的内部调用自身的过程.递归必须要有结束条件,否则将陷入无限递归的状态,永远无法结束调用. 代码 public class Example24{ public static vo ...
- JDK停止工作
问题:在服务器上运行程序,有时会出现JDK已停止工作,如图: 解决:在网上查找了很多资料,主要有以下几点 1.程序冲突,回想近期是否新安装了程序,将该程序进行关闭之后,再运行程序 2.异常未处理,即代 ...
- 封装jar问题java.lang.SecurityException: Invalid signature file digest for Manifest main attributes以及maven依赖重提解决
1.jar包封装完成后,其他项目引用jar,启动时报错java.lang.SecurityException: Invalid signature file digest for Manifest m ...
- 浅谈VPC (转)
来源于知乎:https://zhuanlan.zhihu.com/p/33658624 VPC全称是Virtual Private Cloud,翻译成中文是虚拟私有云.但是在有些场合也被翻译成私有网络 ...
- linux 设置connect 超时
转载请注明来源:https://www.cnblogs.com/hookjc/ 将一个socket 设置成阻塞模式和非阻塞模式,使用fcntl方法,即: 设置成非阻塞模式: 先用fcntl的F_GET ...