vue中使用animate.css实现炫酷动画效果

目录
  • 1.安装(在vscode终端中,使用npm安装)
  • 2.引入
  • 3.代码实现

animate.css 是一个来自国外的 CSS3 动画库,它提供了抖动(shake)、闪烁(flash)、弹跳(bounce)、翻转(flip)、旋转(rotateIn/rotateOut)、淡入淡出(fadeIn/fadeOut)等多达 60 多种动画效果,几乎包含了所有常见的动画效果。这些效果在大多数支持CSS3的浏览器上都能保持一致。简单来说,我们使用它,只需要写很少的代码,就可以实现非常炫酷的动画效果。

官网: https://animate.style/

1.安装(在vscode终端中,使用npm安装)

npm install animate.css

2.引入

在Test.vue中引入

import 'animate.css'

3.代码实现

Test.vue文件如下:

<template>
  <div>
      <button @click="isShow = !isShow">显示/隐藏</button>
       <!--
         appear:一上来就有动画效果
         enter-active-class:设置进入的动画
         leave-active-class:设置离开的动画

        -->
       <!-- <transition
        appear
        name="animate__animated animate__bounce"
        enter-active-class="animate__slideInUp"
        leave-active-class="animate__zoomOut"

      >
         <h2 v-show="isShow">animate.css!</h2>
      </transition> -->

      <transition-group
        appear
        name="animate__animated animate__bounce"
        enter-active-class="animate__swing"
        leave-active-class="animate__backOutUp"

      >
         <h2 v-show="!isShow" key="1">你好啊!</h2>    <!--一定要设置key-->
         <h2 v-show="isShow" key="2">animate.css!</h2>
      </transition-group>
  </div>
</template>

<script>
 import 'animate.css'
 export default {
  name:'Test3',
  data(){
      return {
        isShow:true
      }
  }
}
</script>

<style scoped>
  h2{
      background-color: skyblue;
  }
</style>

在App.vue中注册、使用Test.vue即可

<template>
  <div>
    <Test/>
  </div>
</template>

<script>
import Test from './components/Test'
export default {
  name:'App',
  components:{Test}

}
</script>

<style>

</style>

注意:

  • 要想使用animate.css, 需要把相关标签用<transition>.....</transition> 进行包裹,只能包裹单个标签。
  • 使用<transition-group>.....</transition-group>可以包裹多个标签,注意一定要加key 这个属性值
  • appear :表示一上来就有动画效果。相当于::appear = 'true'
  • 自定义修改

进入、离开的动画可以从官网中选择自己喜欢的,点击上图中红线框标识进行复制,直接替换掉下图中红线框内容即可。

5、使用:duration设置动画统一的运行时长,单位:ms

<!--
		设置入场和离场的运行时长都是一样的
		时间单位:ms
		<transition :duration="1000">...</transition>
	-->
<transition
        appear
        name="animate__animated animate__bounce"
        enter-active-class="animate__slideInUp"
        leave-active-class="animate__zoomOut"
        :duration="1000"

      >
         <h2 v-show="isShow">animate.css!</h2>
</transition>
		<!--
			分开设置入场`enter`和离场`leave`的运行时长。
			<transition :duration="{ enter: 500, leave: 800 }">...</transition>
		-->
<transition
        appear
        name="animate__animated animate__bounce"
        enter-active-class="animate__slideInUp"
        leave-active-class="animate__zoomOut"
        :duration="{ enter:200, leave:1500 }"

      >
         <h2 v-show="isShow">animate.css!</h2>
</transition> 

到此这篇关于vue中使用animate.css实现动画效果的文章就介绍到这了,更多相关vue使用animate.css动画效果内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • vue操作动画的记录animate.css实例代码

    transition动画 //使用动画库animate.css <transition enter-active-class='animated bounceIn' leave-active-class='animated bounceOut' :duration='200'> //其中duration是绑定动画的时间 统一设置进入与出去的时间 <h3 v-if='flag'>这里是动画的内容</h3> </transition > //也可以这样使用 &l

  • Vue实现Tab标签路由效果并用Animate.css做转场动画效果的代码第1/3页

    类似于浏览器窗口一样的路由切换逻辑,看着还是挺高大上的,本以为有很多高级的玩意儿,奈何复杂的东西总是由简单的东西拼接而成的,这个功能也不例外. 本篇文章主要描述两个问题: 如何实现这种Tab标签页的路由效果 如何为路由切换添加转场动画. 该功能的开发主要使用到 AntDesignVue 组件库的Tab组件和 Animate.css 效果如下: Tab标签页实现 首先是该组件的模板部分, ContextMenu 组件是我们自定义的右键菜单,后面会说到. a-tabs 组件则是 ant 的组件,具体

  • vue 1.0 结合animate.css定义动画效果

    Vue 1.0 动画(自定义动画) 步骤: 1.给当前动画元素添加'transition'属性  其值就是动画名称(假如:fade) 2.给动画名称写css定义 a: .fade-transition{/*定义动画过渡*/   transition:1s  all ease;} b: .fade-enter{/*定义进入动画  注意:进入离开最终一样*/} c:fade-leave{/*定义离开动画*/} html 如下: <div id="wrap"> <input

  • vue中使用animate.css实现炫酷动画效果

    目录 1.安装(在vscode终端中,使用npm安装) 2.引入 3.代码实现 animate.css 是一个来自国外的 CSS3 动画库,它提供了抖动(shake).闪烁(flash).弹跳(bounce).翻转(flip).旋转(rotateIn/rotateOut).淡入淡出(fadeIn/fadeOut)等多达 60 多种动画效果,几乎包含了所有常见的动画效果.这些效果在大多数支持CSS3的浏览器上都能保持一致.简单来说,我们使用它,只需要写很少的代码,就可以实现非常炫酷的动画效果. 官

  • JS+CSS实现炫酷光感效果

    JS+CSS带你实现炫酷光感效果,供大家参考,具体内容如下 效果一:(螺旋式沉浸视觉感受) 效果二:(旋涡式远观视觉感受) 实现代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>光感效果</title> </head> <style> html,body{ height: 100%; overflow: hidde

  • Jquery左右滑动插件之实现超级炫酷动画效果附源码下载

    分享一款基于jQuery超级酷动画滑动插件.这是一款基于jquery.pogo-slider插件实现的多个滑块切换特效.效果图如下,如果大家觉得还不错,很满意可以下载源码哦. 效果展示     源码下载 实现的代码. html代码: <div class="pogoSlider" id="js-main-slider"> <div class="pogoSlider-slide" data-transition="sl

  • 原生JS+CSS实现炫酷重力模拟弹跳系统的登录页面

    今天小编把之前保存的js特效视频看了一遍,跟着视频敲了敲嘻嘻,用原生js实现一个炫酷的登录页面.怎么个炫酷法呢,看看下面的图片大家就知道啦. 效果图: 不过在看代码之前呢,大家先和小颖看看css中的opacity.transition.box-shadow这三个属性. 1.opacity CSS3 opacity 属性 实例 设置一个div元素的透明度级别: div { opacity:0.5; } 在此页底部有更多的例子. 浏览器支持 Internet ExplorerFirefoxOpera

  • vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)

    前言: 此事例是在vue组件中,使用canvas实现倒计时动画的效果.其实,实现效果的逻辑跟vue没有关系,只要读懂canvas如何实现效果的这部分逻辑就可以了 canvas动画的原理:利用定时器,给定合理的帧数,不断的清除画布,再重绘图形,即呈现出动画效果. 让我们先看下效果 说明:此gif清晰度很低,因为转成gif图的时候,质量受损,帧数减少,所以倒计时转到红色时候看起来变的很模糊.但是实际在浏览器上效果全程都是很清晰和连贯的 使用 npm npm install vue-canvas-co

  • vue过渡和animate.css结合使用详解

    今天学习了vue过渡和animate.css结合使用,所以,添加一点小笔记. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>动画</title> <script type="text/javascript" src="vue.js"></scri

  • Vue中的作用域CSS和CSS模块的区别

    现代Web开发中的CSS离完美还差得远,这并不奇怪.现在,项目通常是相当的复杂的,而CSS样式又是全局性的,所以到最后总是极容易地发生样式冲突: 样式相互覆盖 或 隐式地级联到我们未考虑到的元素 . 为了减轻CSS存在的主要痛点,我们在项目中普遍采用 BEM 的方法来.不过这只能解决CSS问题中的一小部分. 对我们来说是幸运的,社区已经开发出了可以帮助我们更彻底地解决问题的解决方案.你可能已经听说过 CSS Modules. Styled Componetns. Glamorous或 JSS.这

  • Vue中对比scoped css和css module的区别

    scoped css 官方文档 scoped css可以直接在能跑起来的vue项目中使用. 使用方法: <style scoped> h1 { color: #f00; } </style> 使用scoped划分本地样式的结果编译结果如下: h1[data-v-4c3b6c1c] { color: #f00; } 即在元素中添加了一个唯一属性用来区分. 缺点 一.如果用户在别处定义了相同的类名,也许还是会影响到组件的样式. 二.根据css样式优先级的特性,scoped这种处理会造成

  • 在vue中动态修改css其中一个属性值操作

    我就废话不多说了,大家还是直接看代码吧~ <template> <!--此div的高度取屏幕可视区域的高度--> <div class="hello" :style="{'height':getClientHeight}"> <h5>{{ msg }}</h5> </div> </template> <script> export default { data() { r

随机推荐