纯css动画库animate.css的用法

简介: 纯css动画库animate.css的用法


背景

手撕css动画是不是很脑壳痛呢,别慌,它来了,在这里推荐一款纯css的动画库,animate.css,只需要引入它,更改一下元素类名,即可快速实现你想要的动画效果

animate.css动画示例展示

animate.css官方github

animate.css的3.x以下老版本的文档(老版本,不再推荐了)

animate.css新版本官方文档

引入

法一

npm

npm install animate.css --save

yarn

yarn add animate.css

main.js中配置

// 引入animate.css
import animated from 'animate.css';
Vue.use(animated);

法二

通过CDN方式引入

<head>
  <link
    rel="stylesheet"
    href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.0.0/animate.min.css"
  />
</head>

使用

组件中使用

<h1 class="animate__animated animate__fadeIn">An animated element</h1>

如何自定义修改如持续时间之类的动画属性

  • 法一
/* 只更改一个动画的持续时间 */
.animate__animated.animate__bounce {
  --animate-duration: 2s;
}
/* 更改所有动画的持续时间 */
:root {
  --animate-duration: 800ms;
  --animate-delay: 0.9s;
}
  • 法二
    除了直接修改style,我们还可以给组件添加animate.css提供的一些特殊类名达到实现修改持续时间之类的动画属性
    如:
<div class="animate__animated animate__bounce animate__delay-2s">Example</div>

animate提供了哪些动画

  • fade 淡入淡出
属性 效果
fadeIn 淡入
fadeInDown 向下淡入
fadeInDownBig 向下快速淡入
fadeInLeft 向右淡入
fadeInLeftBig 向右快速淡入
fadeInRight 向左淡入
fadeInRightBig 向左快速淡入
fadeInUp 向上淡入
fadeInUpBig 向上快速淡入
fadeOut 淡出
fadeOutDown 向下淡出
fadeOutDownBig 向下快速淡出
fadeOutLeft 向左淡出
fadeOutLeftBig 向左快速淡出
adeOutRight 向右淡出
fadeOutRightBig 向右快速淡出
fadeOutUp 向上淡出
fadeOutUpBig 向上快速淡出
  • bounce 弹跳类
属性 效果
bounceIn 弹跳进入
bounceInDown 向下弹跳进入
bounceInLeft 向右弹跳进入
bounceInRight 向左弹跳进入
bounceInUp 向上弹跳进入
bounceOut 弹跳退出
bounceOutDown 向下弹跳退出
bounceOutLeft 向左弹跳退出
bounceOutRight 向右弹跳退出
bounceOutUp 向上弹跳退出
  • zoom 缩放类
属性 效果
zoomIn 放大进入
zoomInDown 向下放大进入
zoomInLeft 向右放大进入
zoomInRight 向左放大进入
zoomInUp 向上放大进入
zoomOut 缩小退出
zoomOutDown 向下缩小退出
zoomOutLeft 向左缩小退出
zoomOutRight 向右缩小退出
zoomOutUp 向上缩小退出
  • rotate 旋转类
属性 效果
rotateIn 顺时针旋转进入
rotateInDownLeft 从左往下旋入
rotateInDownRight 从右往下旋入
rotateInUpLeft 从左往上旋入
rotateInUpRight 从右往上旋入
rotateOut 顺时针旋转退出
rotateOutDownLeft 向左下旋出
rotateOutDownRight 向右下旋出
rotateOutUpLeft 向左上旋出
rotateOutUpRight 向右上旋出
  • flip 翻转类
属性 效果
flipInX 水平翻转进入
flipInY 垂直翻转进入
flipOutX 水平翻转退出
flipOutY 垂直翻转退出
  • strong 强调类
属性 效果
bounce 弹跳
flash 闪烁
pulse 脉冲
rubberBand 橡皮筋
shake 左右弱晃动
swing 上下摆动
tada 缩放摆动
wobble 左右强晃动
jello 拉伸抖动

完整的使用示例

<template>
  <div class="hello">
    <div class="box" ref="box">盒子</div>
    <div @click="handleFadeIn">淡入</div>
    <div @click="handleFadeOut">淡出</div>
  </div>
</template>
<script>
export default {
  name: 'Fade',
  data() {
    return {};
  },
  created() {},
  methods: {
    handleFadeIn() {
      // this.$refs.box.className = 'box animated fadeIn'; // 这是3.x以下版本的使用方式
      this.$refs.box.className = 'box animate__animated animate__fadeIn'; // 这是4.0以上版本的使用方式
    },
    handleFadeOut() {
      // this.$refs.box.className = 'box animated fadeOut'; // 这是3.x以下版本的使用方式
      this.$refs.box.className = 'box animate__animated animate__fadeOut'; // 这是4.0以上版本的使用方式
    },
  },
};
</script>
<style lang="less" scoped>
  .box {
    width: 200px;
    height: 200px;
    background-color: red;
  }
</style>

文章参考https://www.cnblogs.com/apolloren/p/10828166.html

目录
相关文章
|
1月前
|
机器学习/深度学习 前端开发 JavaScript
|
28天前
|
前端开发 搜索推荐 UED
实现 CSS 动画效果的兼容性
【10月更文挑战第16天】实现 CSS 动画效果的兼容性需要对不同浏览器的特性有深入的了解,并采取适当的策略和方法。通过不断的实践和优化,你可以在各种浏览器上创造出流畅、美观且兼容的动画效果,为用户带来更好的体验。在实际开发中,要密切关注浏览器的发展动态,及时掌握最新的兼容性技巧和解决方案,以确保你的动画设计能够在广泛的用户群体中得到良好的呈现。
104 58
|
7天前
|
Web App开发 前端开发 JavaScript
如何在不牺牲动画效果的前提下,优化 CSS3 动画的性能?
如何在不牺牲动画效果的前提下,优化 CSS3 动画的性能?
21 1
|
14天前
|
前端开发
常见 CSS 选择器用法
常见 CSS 选择器用法
22 1
|
1月前
|
前端开发 JavaScript API
探索 CSS Houdini:轻松构建酷炫的 3D 卡片翻转动画
本文通过构建一个 3D 翻卡动画深入探讨了 CSS Houdini 的强大功能,展示了如何通过 Worklets、自定义属性、Paint API 等扩展 CSS 的能力,实现高度灵活的动画效果。文章首先介绍了 Houdini 的核心概念与 API,并通过构建一个动态星空背景、圆形进度条以及交互式 3D 翻卡动画的实际示例,展示了如何利用 CSS Houdini 赋予网页设计更多创造力。最后,还演示了如何将这种 3D 翻卡效果集成到公司网站中,提升用户体验。CSS Houdini 的创新能力为网页设计带来了前所未有的灵活性,推动了前端开发迈向新的高度。
27 0
探索 CSS Houdini:轻松构建酷炫的 3D 卡片翻转动画
|
2月前
|
JavaScript 前端开发
JS配合CSS3实现动画和拖动小星星小Demo
本文通过代码示例展示了如何使用JavaScript和CSS3实现动画效果和拖动小星星的交互效果,包括文字掉落动画和鼠标拖动产生小星星动画的实现方法。
46 0
JS配合CSS3实现动画和拖动小星星小Demo
|
1月前
|
前端开发
CSS 动画介绍及语法
CSS 动画介绍及语法
28 0
animate.css做点赞效果
花了一晚上研究出来的,感觉还行吧。。。 代码:   源码下载: http://image.niunan.net/animatedemo.zip
1968 0
|
3月前
|
前端开发
2s 利用 HTML+css动画实现企业官网效果
2s 利用 HTML+css动画实现企业官网效果