第十二篇【传奇开心果系列】Ant Design Mobile of React开发移动应用:内置组件实现酷炫CSS 动画

news/2024/12/22 14:08:38/

Ant Design Mobile of React 开发移动应用示例博文系列

第一篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:从helloworld开始
第二篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:天气应用
第三篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:健身追踪
第四篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:数据存储的七种类型讲解和示例
第五篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:基础页面制作介绍和示例代码
第六篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:UI框架39个组件集中讲解和示例代码
第七篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:安装配置node和npm避坑攻略
第八篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:打包上架部署云服务托管等后期工作
第九篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:使用内置组件实现响应式设计
第十篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:涉相关基础知识介绍和示例
第十一篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:移动商城应用
第十二篇【传奇开心果系列】Ant Design Mobile of React 开发移动应用:内置组件实现酷炫CSS 动画

传奇开心果博文系列

    • Ant Design Mobile of React 开发移动应用示例博文系列
  • 博文目录
    • 一、前言
    • 二、CSS动画介绍
    • 三、淡入淡出动画开发中应用示例代码
    • 四、滑动动画开发中应用示例代码
    • 五、缩放动画开发中应用示例代码
    • 六、渐变色动画开发中应用示例代码
    • 七、旋转动画开发中应用示例代码
    • 八、弹跳动画开发中应用示例代码
    • 九、归纳总结知识点

博文目录

一、前言

CSS 动画:Ant Design Mobile of React 提供了一些内置组件实现的酷炫的CSS动画效果,如淡入淡出、滑动等。了解 CSS 动画的基本原理和使用方式可以帮助开发者在开发中添加自定义的动画效果,提升用户体验。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、CSS动画介绍

Ant Design Mobile of React 提供了一些内置组件实现的酷炫的CSS动画效果,可以用于创建各种动态和交互式的用户界面。

1.淡入淡出(Fade)动画

可以通过设置组件的 transitionName 属性来实现。例如,你可以将一个组件的 transitionName 设置为 'fade',然后在 CSS 样式中定义 fade-enterfade-enter-activefade-exitfade-exit-active 类名,分别表示进入和离开动画的不同状态。

2.滑动(Slide)动画

可以通过设置组件的 transitionName 属性来实现。你可以将一个组件的 transitionName 设置为 'slide',然后在 CSS 样式中定义 slide-enterslide-enter-activeslide-exitslide-exit-active 类名,分别表示进入和离开动画的不同状态。

3.缩放(Scale)动画

可以通过设置组件的 transitionName 属性来实现缩放效果。你可以将一个组件的 transitionName 设置为 'scale',然后在 CSS 样式中定义 scale-enterscale-enter-activescale-exitscale-exit-active 类名,分别表示进入和离开动画的不同状态。

4.渐变色(Gradient)动画

可以通过设置组件的 transitionName 属性来实现渐变色效果。你可以将一个组件的 transitionName 设置为 'gradient',然后在 CSS 样式中定义 gradient-entergradient-enter-activegradient-exitgradient-exit-active 类名,分别表示进入和离开动画的不同状态。

5.旋转(Rotate)动画

可以通过设置组件的 transitionName 属性来实现旋转效果。你可以将一个组件的 transitionName 设置为 'rotate',然后在 CSS 样式中定义 rotate-enterrotate-enter-activerotate-exitrotate-exit-active 类名,分别表示进入和离开动画的不同状态。

6.弹跳(Bounce)动画

可以通过设置组件的 transitionName 属性来实现弹跳效果。你可以将一个组件的 transitionName 设置为 'bounce',然后在 CSS 样式中定义 bounce-enterbounce-enter-activebounce-exitbounce-exit-active 类名,分别表示进入和离开动画的不同状态。
这些动画效果可以根据你的需求进行定制和扩展。你可以在 Ant Design Mobile of React 的官方文档中找到更多关于这些动画效果的详细信息和示例代码。

三、淡入淡出动画开发中应用示例代码

在这里插入图片描述当使用 Ant Design Mobile of React 开发移动应用时,你需要先引入相应的 CSS 样式文件或库,以确保动画效果能够正常工作。通常情况下,你可以在项目的入口文件(如 index.js)中引入这些样式。
以下是一个使用淡入淡出效果的示例代码:
首先,你需要安装 @am-design/css 库,它包含了 Ant Design Mobile 的 CSS 样式文件。你可以使用 npm 或 yarn 进行安装:

npm install @am-design/css

yarn add @am-design/css

然后,在你的入口文件中,引入 Ant Design Mobile 的 CSS 样式文件:

import '@am-design/css/dist/am-design.css';

接下来,你可以在你的组件中使用淡入淡出效果。例如,你可以创建一个名为 FadeExample 的组件:

import React, { useState } from 'react';
import { CSSTransition } from 'react-transition-group';const FadeExample = () => {const [show, setShow] = useState(false);const handleToggle = () => {setShow(!show);};return (<div><button onClick={handleToggle}>Toggle</button><CSSTransitionin={show}timeout={300}classNames="fade"unmountOnExit><div className="fade-content">Content</div></CSSTransition></div>);
};export default FadeExample;

在上面的代码中,我们使用了 react-transition-group 库中的 CSSTransition 组件来实现淡入淡出效果。通过设置 in 属性来控制组件的显示和隐藏,timeout 属性定义了动画的持续时间,classNames 属性指定了动画效果的类名前缀。
接着,在 CSS 样式文件中定义淡入淡出效果的类名:

.fade-enter {opacity: 0;
}.fade-enter-active {opacity: 1;transition: opacity 300ms;
}.fade-exit {opacity: 1;
}.fade-exit-active {opacity: 0;transition: opacity 300ms;
}

以上代码中,fade-enterfade-exit 类名定义了进入和离开动画的初始状态,而 fade-enter-activefade-exit-active 类名定义了进入和离开动画的活动状态。
最后,你可以在你的应用中使用 FadeExample 组件来展示淡入淡出效果:

import React from 'react';
import FadeExample from './FadeExample';const App = () => {return (<div><h1>Ant Design Mobile of React</h1><FadeExample /></div>);
};export default App;

通过以上代码,你就可以在你的移动应用中使用淡入淡出效果了。当点击 “Toggle” 按钮时,FadeExample 组件的内容将以淡入淡出的方式显示或隐藏。

四、滑动动画开发中应用示例代码

在这里插入图片描述当使用 Ant Design Mobile of React 开发移动应用时,你可以使用滑动(Slide)动画效果。以下是一个使用滑动动画的示例代码:

首先,你需要安装 @am-design/css 库,它包含了 Ant Design Mobile 的 CSS 样式文件。你可以使用 npm 或 yarn 进行安装。

然后,在你的入口文件中,引入 Ant Design Mobile 的 CSS 样式文件:

import '@am-design/css/dist/am-design.css';

接下来,你可以在你的组件中使用滑动动画。例如,你可以创建一个名为 SlideExample 的组件:

import React, { useState } from 'react';
import { CSSTransition } from 'react-transition-group';const SlideExample = () => {const [show, setShow] = useState(false);const handleToggle = () => {setShow(!show);};return (<div><button onClick={handleToggle}>Toggle</button><CSSTransitionin={show}timeout={300}classNames="slide"unmountOnExit><div className="slide-content">Content</div></CSSTransition></div>);
};export default SlideExample;

在上面的代码中,我们使用了 react-transition-group 库中的 CSSTransition 组件来实现滑动动画。通过设置 in 属性来控制组件的显示和隐藏,timeout 属性定义了动画的持续时间,classNames 属性指定了动画效果的类名前缀。

接着,在 CSS 样式文件中定义滑动动画的类名:

.slide-enter {transform: translateX(-100%);
}.slide-enter-active {transform: translateX(0);transition: transform 300ms;
}.slide-exit {transform: translateX(0);
}.slide-exit-active {transform: translateX(100%);transition: transform 300ms;
}

以上代码中,slide-enterslide-exit 类名定义了进入和离开动画的初始状态,而 slide-enter-activeslide-exit-active 类名定义了进入和离开动画的活动状态。

最后,你可以在你的应用中使用 SlideExample 组件来展示滑动动画:

import React from 'react';
import SlideExample from './SlideExample';const App = () => {return (<div><h1>Ant Design Mobile of React</h1><SlideExample /></div>);
};export default App;

通过以上代码,你就可以在你的移动应用中使用滑动动画了。当点击 “Toggle” 按钮时,SlideExample 组件的内容将以滑动的方式显示或隐藏。

五、缩放动画开发中应用示例代码

在这里插入图片描述当使用 Ant Design Mobile of React 开发移动应用时,你可以使用滑动缩放动画效果。以下是一个使用滑动缩放动画的示例代码:

首先,你需要安装 @am-design/css 库,它包含了 Ant Design Mobile 的 CSS 样式文件。你可以使用 npm 或 yarn 进行安装。

然后,在你的入口文件中,引入 Ant Design Mobile 的 CSS 样式文件:

import '@am-design/css/dist/am-design.css';

接下来,你可以在你的组件中使用滑动缩放动画。例如,你可以创建一个名为 ZoomSlideExample 的组件:

import React, { useState } from 'react';
import { CSSTransition } from 'react-transition-group';const ZoomSlideExample = () => {const [show, setShow] = useState(false);const handleToggle = () => {setShow(!show);};return (<div><button onClick={handleToggle}>Toggle</button><CSSTransitionin={show}timeout={300}classNames="zoom-slide"unmountOnExit><div className="zoom-slide-content">Content</div></CSSTransition></div>);
};export default ZoomSlideExample;

在上面的代码中,我们使用了 react-transition-group 库中的 CSSTransition 组件来实现滑动缩放动画。通过设置 in 属性来控制组件的显示和隐藏,timeout 属性定义了动画的持续时间,classNames 属性指定了动画效果的类名前缀。

接着,在 CSS 样式文件中定义滑动缩放动画的类名:

.zoom-slide-enter {opacity: 0;transform: translateY(-100%) scale(0.5);
}.zoom-slide-enter-active {opacity: 1;transform: translateY(0) scale(1);transition: opacity 300ms, transform 300ms;
}.zoom-slide-exit {opacity: 1;transform: translateY(0) scale(1);
}.zoom-slide-exit-active {opacity: 0;transform: translateY(100%) scale(0.5);transition: opacity 300ms, transform 300ms;
}

以上代码中,zoom-slide-enterzoom-slide-exit 类名定义了进入和离开动画的初始状态,而 zoom-slide-enter-activezoom-slide-exit-active 类名定义了进入和离开动画的活动状态。

最后,你可以在你的应用中使用 ZoomSlideExample 组件来展示滑动缩放动画:

import React from 'react';
import ZoomSlideExample from './ZoomSlideExample';const App = () => {return (<div><h1>Ant Design Mobile of React</h1><ZoomSlideExample /></div>);
};export default App;

通过以上代码,你就可以在你的移动应用中使用滑动缩放动画了。当点击 “Toggle” 按钮时,ZoomSlideExample 组件的内容将以滑动缩放的方式显示或隐藏。

六、渐变色动画开发中应用示例代码

在这里插入图片描述当使用 Ant Design Mobile of React 开发移动应用时,你可以使用渐变色动画效果。以下是一个使用渐变色动画的示例代码:

首先,你需要安装 @am-design/css 库,它包含了 Ant Design Mobile 的 CSS 样式文件。你可以使用 npm 或 yarn 进行安装:

npm install @am-design/css

yarn add @am-design/css

然后,在你的入口文件中,引入 Ant Design Mobile 的 CSS 样式文件:

import '@am-design/css/dist/am-design.css';

接下来,你可以在你的组件中使用渐变色动画。例如,你可以创建一个名为 GradientAnimationExample 的组件:

import React, { useState } from 'react';
import { CSSTransition } from 'react-transition-group';const GradientAnimationExample = () => {const [show, setShow] = useState(false);const handleToggle = () => {setShow(!show);};return (<div><button onClick={handleToggle}>Toggle</button><CSSTransitionin={show}timeout={300}classNames="gradient-animation"unmountOnExit><div className="gradient-animation-content">Content</div></CSSTransition></div>);
};export default GradientAnimationExample;

在上面的代码中,我们使用了 react-transition-group 库中的 CSSTransition 组件来实现渐变色动画。通过设置 in 属性来控制组件的显示和隐藏,timeout 属性定义了动画的持续时间,classNames 属性指定了动画效果的类名前缀。

接着,在 CSS 样式文件中定义渐变色动画的类名:

.gradient-animation-enter {opacity: 0;
}.gradient-animation-enter-active {opacity: 1;transition: opacity 300ms;animation: gradient-animation 3s infinite;
}.gradient-animation-exit {opacity: 1;
}.gradient-animation-exit-active {opacity: 0;transition: opacity 300ms;
}@keyframes gradient-animation {0% {background: linear-gradient(to right, #ff0000, #00ff00);}50% {background: linear-gradient(to right, #00ff00, #0000ff);}100% {background: linear-gradient(to right, #0000ff, #ff0000);}
}

以上代码中,gradient-animation-entergradient-animation-exit 类名定义了进入和离开动画的初始状态,而 gradient-animation-enter-activegradient-animation-exit-active 类名定义了进入和离开动画的活动状态。

@keyframes 定义了渐变色动画的关键帧,从左到右依次变化颜色。

最后,你可以在你的应用中使用 GradientAnimationExample 组件来展示渐变色动画:

import React from 'react';
import GradientAnimationExample from './GradientAnimationExample';const App = () => {return (<div><h1>Ant Design Mobile of React</h1><GradientAnimationExample /></div>);
};export default App;

通过以上代码,你就可以在你的移动应用中使用渐变色动画了。当点击 “Toggle” 按钮时,GradientAnimationExample 组件的内容将以渐变色的方式显示或隐藏,并且背景颜色会按照定义的动画效果进行变化。

七、旋转动画开发中应用示例代码

在这里插入图片描述当使用 Ant Design Mobile of React 开发移动应用时,你可以使用旋转动画效果。以下是一个使用旋转动画的示例代码:

首先,你需要安装 @am-design/css 库,它包含了 Ant Design Mobile 的 CSS 样式文件。你可以使用 npm 或 yarn 进行安装:

npm install @am-design/css

yarn add @am-design/css

然后,在你的入口文件中,引入 Ant Design Mobile 的 CSS 样式文件:

import '@am-design/css/dist/am-design.css';

接下来,你可以在你的组件中使用旋转动画。例如,你可以创建一个名为 RotateAnimationExample 的组件:

import React, { useState } from 'react';
import { CSSTransition } from 'react-transition-group';const RotateAnimationExample = () => {const [show, setShow] = useState(false);const handleToggle = () => {setShow(!show);};return (<div><button onClick={handleToggle}>Toggle</button><CSSTransitionin={show}timeout={300}classNames="rotate-animation"unmountOnExit><div className="rotate-animation-content">Content</div></CSSTransition></div>);
};export default RotateAnimationExample;

在上面的代码中,我们使用了 react-transition-group 库中的 CSSTransition 组件来实现旋转动画。通过设置 in 属性来控制组件的显示和隐藏,timeout 属性定义了动画的持续时间,classNames 属性指定了动画效果的类名前缀。

接着,在 CSS 样式文件中定义旋转动画的类名:

.rotate-animation-enter {opacity: 0;transform: rotate(0);
}.rotate-animation-enter-active {opacity: 1;transform: rotate(360deg);transition: opacity 300ms, transform 300ms;
}.rotate-animation-exit {opacity: 1;transform: rotate(360deg);
}.rotate-animation-exit-active {opacity: 0;transform: rotate(0);transition: opacity 300ms, transform 300ms;
}

以上代码中,rotate-animation-enterrotate-animation-exit 类名定义了进入和离开动画的初始状态,而 rotate-animation-enter-activerotate-animation-exit-active 类名定义了进入和离开动画的活动状态。

最后,你可以在你的应用中使用 RotateAnimationExample 组件来展示旋转动画:

import React from 'react';
import RotateAnimationExample from './RotateAnimationExample';const App = () => {return (<div><h1>Ant Design Mobile of React</h1><RotateAnimationExample /></div>);
};export default App;

通过以上代码,你就可以在你的移动应用中使用旋转动画了。当点击 “Toggle” 按钮时,RotateAnimationExample 组件的内容将以旋转的方式显示或隐藏。

八、弹跳动画开发中应用示例代码

在这里插入图片描述当使用 Ant Design Mobile of React 开发移动应用时,你可以使用弹跳动画效果。以下是一个使用弹跳动画的示例代码:

首先,你需要安装 @am-design/css 库,它包含了 Ant Design Mobile 的 CSS 样式文件。你可以使用 npm 或 yarn 进行安装:

npm install @am-design/css

yarn add @am-design/css

然后,在你的入口文件中,引入 Ant Design Mobile 的 CSS 样式文件:

import '@am-design/css/dist/am-design.css';

接下来,你可以在你的组件中使用弹跳动画。例如,你可以创建一个名为 BounceAnimationExample 的组件:

import React, { useState } from 'react';
import { CSSTransition } from 'react-transition-group';const BounceAnimationExample = () => {const [show, setShow] = useState(false);const handleToggle = () => {setShow(!show);};return (<div><button onClick={handleToggle}>Toggle</button><CSSTransitionin={show}timeout={300}classNames="bounce-animation"unmountOnExit><div className="bounce-animation-content">Content</div></CSSTransition></div>);
};export default BounceAnimationExample;

在上面的代码中,我们使用了 react-transition-group 库中的 CSSTransition 组件来实现弹跳动画。通过设置 in 属性来控制组件的显示和隐藏,timeout 属性定义了动画的持续时间,classNames 属性指定了动画效果的类名前缀。

接着,在 CSS 样式文件中定义弹跳动画的类名:

.bounce-animation-enter {opacity: 0;transform: translateY(-100%);
}.bounce-animation-enter-active {opacity: 1;transform: translateY(0);transition: opacity 300ms, transform 300ms cubic-bezier(0.68, -0.55, 0.27, 1.55);
}.bounce-animation-exit {opacity: 1;transform: translateY(0);
}.bounce-animation-exit-active {opacity: 0;transform: translateY(100%);transition: opacity 300ms, transform 300ms cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

以上代码中,bounce-animation-enterbounce-animation-exit 类名定义了进入和离开动画的初始状态,而 bounce-animation-enter-activebounce-animation-exit-active 类名定义了进入和离开动画的活动状态。

最后,你可以在你的应用中使用 BounceAnimationExample 组件来展示弹跳动画:

import React from 'react';
import BounceAnimationExample from './BounceAnimationExample';const App = () => {return (<div><h1>Ant Design Mobile of React</h1><BounceAnimationExample /></div>);
};export default App;

通过以上代码,你就可以在你的移动应用中使用弹跳动画了。当点击 “Toggle” 按钮时,BounceAnimationExample 组件的内容将以弹跳的方式显示或隐藏。

希望这些示例能够帮助你理解如何在 Ant Design Mobile of React 中使用内置动画。如果你有任何进一步的问题,请随时提问。

九、归纳总结知识点

使用 Ant Design Mobile of React 的 CSS 内置动画的知识点总结如下:

  1. Ant Design Mobile(AM)提供了一些内置的 CSS 动画效果,可以直接在组件中使用。

  2. 在使用内置动画之前,需要确保已正确引入 Ant Design Mobile 的 CSS 样式文件。

  3. 内置动画类名的命名规则为 am-animation-<animation-name>,其中 <animation-name> 是具体的动画名称。

  4. 可以通过在组件的 className 属性中添加内置动画类名来应用相应的动画效果。

  5. 内置动画可以应用于组件的进入、离开和活动状态,具体的类名为:

    • 进入动画:am-animation-enteram-animation-enter-active
    • 离开动画:am-animation-exitam-animation-exit-active
    • 活动动画:am-animation-active
  6. 内置动画可以使用在 CSSTransition 组件中,通过设置相应的类名和持续时间来控制动画效果。

  7. 内置动画可以与其他 CSS 类名和样式一起使用,以实现更复杂的动画效果。

  8. 可以使用 @keyframes 规则自定义和扩展内置动画,以满足特定的需求。

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述总结以上知识点,你可以在 Ant Design Mobile of React 中利用内置动画类名和 CSSTransition 组件来实现各种动画效果。通过合理应用这些知识点,可以为你的移动应用增添一些生动和吸引人的交互效果。


http://www.ppmy.cn/news/1326454.html

相关文章

【react】创建react项目+项目结构

使用create-react-app快速搭建开发环境 create-react-app是一个快速创建React开发环境的工具&#xff0c;底层由Webpack构建&#xff0c;封装了配置细节 npx create-react-app react_hm执行命令后开始创建 创建好执行cd react_hm npm start 当看到webpack compiled successfu…

飞天使-docker知识点13-查找docker run 启动时候命令与升级docker版本

文章目录 如果很久了&#xff0c;不记得之前docker run 命令然后在升级docker 版本 如果很久了&#xff0c;不记得之前docker run 命令 # 安装runlike安装包 pip install runlike# 运行命令 runlike -p <container_name> # 后面可以是容器名和容器id&#xff0c;-p参数是…

el-table样式错乱解决方案

bug&#xff1a; 图片的椭圆框住的地方&#xff0c;在页面放大缩小之后就对不齐了。 原因&#xff1a; 主要原因是当你对页面放大缩小的时候&#xff0c;页面进行了重构&#xff0c;页面的宽高及样式进行了变化&#xff0c;但是在这个更新的过程中&#xff0c;table的反应并没…

数据结构排序二叉树(下)

哎,调了几天深度学习模型,今天来更新排序二叉树 文章目录 前言 一、排序二叉树的结构定义 二、在排序二叉树添加数据 三、定义创建排序二叉树函数 四、查找一棵二叉排序树中的结点x的所在层数 五、删除二叉排序树中T关键字x的节点 六、查找二叉排序树中的所有小于key的关…

Cmake(1)——Cmake的基本介绍和原理、Cmake的安装、如何使用Cmake构建项目

Cmake的基本介绍和原理、Cmake的安装、如何使用Cmake构建项目 插播&#xff01;插播&#xff01;插播&#xff01;亲爱的朋友们&#xff0c;我们的Cmake课程上线啦&#xff01;感兴趣的小伙伴可以去下面的链接学习哦~ https://edu.csdn.net/course/detail/39261 1、Cmake的基…

位运算的奇技淫巧

常见位运算总结&#xff1a; 1、基础位运算 左移<<运算 将二进制数向左移位操作&#xff0c;高位溢出则丢弃&#xff0c;低位补0。 右移>>运算 右移位运算中&#xff0c;无符号数和有符号数的运算并不相同。对于无符号数&#xff0c;右移之后高位补0&#xff…

基于SpringBoot Vue自习室管理系统

大家好✌&#xff01;我是Dwzun。很高兴你能来阅读我&#xff0c;我会陆续更新Java后端、前端、数据库、项目案例等相关知识点总结&#xff0c;还为大家分享优质的实战项目&#xff0c;本人在Java项目开发领域有多年的经验&#xff0c;陆续会更新更多优质的Java实战项目&#x…

利用浏览器开发者工具进行网页性能优化

目录 学习目标&#xff1a; 学习内容&#xff1a; 学习时间&#xff1a; 学习产出&#xff1a; 网页性能优化的基本概念和指标&#xff1a; 浏览器开发者工具的基本功能和使用方法&#xff1a; 使用网络面板进行网页加载性能分析&#xff1a; 使用性能面板进行网页渲染性能分析…