非常震撼的纯CSS3人物行走动画

下面我会详细讲解如何制作一份“非常震撼的纯CSS3人物行走动画”的完整攻略。

准备工作

在开始之前,你需要准备好以下内容:

  • 明确定位要制作的人物,包括人物的外形尺寸和行走的姿势;
  • 一份基础的 HTML 文件,用于展示人物行走动画;
  • 一份基础的 CSS 文件,用于定义人物的样式和动画效果。

制作过程

第一步:定义人物的基础样式

我们需要在 CSS 中定义人物的基础样式,包括人物的外形、颜色、边框等。

.person {
  width: 100px;
  height: 150px;
  background-color: #f8d6d6;
  border: 3px solid #f8d6d6;
  position: absolute;
  bottom: 0;
  left: 0;
}

在这里,我们定义了一个名为 .person 的类,它的宽度为 100 像素,高度为 150 像素,背景色和边框颜色都为 #f8d6d6,位置为绝对定位,靠在页面底部的左侧。

第二步:定义人物行走的关键帧动画

接下来,我们需要在 CSS 中定义人物行走的关键帧动画。通过关键帧动画,我们可以定义行走的姿势和步数。

@keyframes walk {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(20px) rotateY(0deg);
  }
  50% {
    transform: translateX(40px) rotateY(0deg);
  }
  75% {
    transform: translateX(20px) rotateY(180deg);
  }
  100% {
    transform: translateX(0) rotateY(180deg);
  }
}

在这里,我们定义了一个名为 walk 的关键帧动画,它包含了从 0% 到 100% 的关键帧。每个关键帧中,我们都定义了人物在对应时刻的状态。

第三步:将关键帧动画应用到人物身上

接下来,我们需要将关键帧动画应用到人物身上。通过 animation 属性和上一步定义的关键帧动画,我们可以让人物行走起来。

.person {
  width: 100px;
  height: 150px;
  background-color: #f8d6d6;
  border: 3px solid #f8d6d6;
  position: absolute;
  bottom: 0;
  left: 0;
  animation: walk 1s ease-in-out infinite;
}

在这里,我们将 walk 这个关键帧动画应用到 .person 这个类上,并设置动画时长为 1 秒,时间函数为 ease-in-out,无限循环。

第四步:添加人物的细节、动作等

在上面三个步骤中,我们已经完成了一个基础的纯 CSS3 人物行走动画。但如果想要让这个动画更加生动,我们可以在上面基础上再进行添加。比如,现在我们可以向人物的头部、手、脚等部位添加一些细节、动作等。

.head {
  width: 30px;
  height: 30px;
  background-color: #f8d6d6;
  position: absolute;
  top: -35px;
  left: 35px;
  border-radius: 50%;
  animation: shake 0.5s ease-in-out infinite;
}

.hand {
  width: 3px;
  height: 30px;
  background-color: #f8d6d6;
  position: absolute;
  top: 0;
  right: 30px;
  animation: waving 0.5s ease-in-out infinite;
}

.foot {
  width: 3px;
  height: 25px;
  background-color: #f8d6d6;
  position: absolute;
  bottom: -25px;
  right: 30px;
  animation: kicking 0.5s ease-in-out infinite;
}

在这里,我们分别定义了 .head.hand.foot 三个类,分别用于定义人物的头部、手、脚等部分。并在每个类中,都定义了相应的动画效果,通过关键帧动画,让他们具有不一样的动作。

示例说明

接下来,我会举两个示例来说明这个攻略的操作过程。

示例一:添加一个“跳跃”的动作

对于这个示例,我们需要在原来的基础上,给人物添加一个“跳跃”的动作。具体操作步骤如下:

  1. 定义一个跳跃的关键帧动画。

@keyframes jump {
0% {
transform: translateY(0);
}
50% {
transform: translateY(-40px);
}
100% {
transform: translateY(0);
}
}

  1. 将这个关键帧动画应用到 .person 类上。

.person {
animation: walk 1s ease-in-out infinite, jump 0.5s ease-in-out infinite;
}

这样,我们就可以让人物在行走的基础上,添加一个“跳跃”的动作了。

示例二:添加一个“抖头”的动作

对于这个示例,我们需要在原来的基础上,给人物的头部添加一个“抖头”的动作。具体操作步骤如下:

  1. 定义一个抖头的关键帧动画。

@keyframes shake {
0% {
transform: rotate(0);
}
25% {
transform: rotate(5deg);
}
50% {
transform: rotate(-5deg);
}
75% {
transform: rotate(5deg);
}
100% {
transform: rotate(0);
}
}

  1. .head 类中,应用这个关键帧动画。

.head {
animation: shake 0.5s ease-in-out infinite;
}

这样,我们就可以让人物在行走的基础上,使头部产生一个“抖头”的动作了。

以上为完成“非常震撼的纯CSS3人物行走动画”的完整攻略,希望可以对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:非常震撼的纯CSS3人物行走动画 - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例

    下面我将详细讲解JavaScript处理HTML事件、键盘事件、鼠标事件的攻略,包括基础概念、代码实现和示例说明。 HTML事件 基础概念 HTML事件是页面元素在浏览器中发生的特定操作,如点击、鼠标移动、键盘按下等。在JavaScript中,我们可以通过事件驱动来实现对HTML事件的处理。 代码实现 // 获取对应元素 var ele = document…

    JavaScript 2023年6月11日
    00
  • 用js计算页面执行时间的函数

    首先,在计算页面执行时间之前,需要先记录页面开始加载的时间和页面加载完成的时间。我们可以使用window对象的performance属性来实现。 页面开始加载的时间: const loadStartTime = window.performance.timing.navigationStart; 页面加载完成的时间: window.onload = func…

    JavaScript 2023年5月27日
    00
  • vue-i18n结合Element-ui的配置方法

    下面我将详细介绍 Vue-i18n 结合 Element-ui 的配置方法。 安装和配置 Vue-i18n 第一步是安装 Vue-i18n,使用以下命令: npm install vue-i18n –save-dev 完成安装后,我们需要在 Vue 项目中添加一个名为 i18n.js 的文件来配置 i18n。该文件的代码如下: import Vue fro…

    JavaScript 2023年6月10日
    00
  • JS动态添加与删除select中的Option对象(示例代码)

    下面我将详细讲解如何通过JavaScript动态地添加和删除<select>元素中的<option>元素。 1. 添加<option>元素 通过JavaScript动态地往<select>元素中添加<option>元素,可以用以下代码: // 获取<select>元素 var selec…

    JavaScript 2023年6月10日
    00
  • JavaScript中好用的解构用法详解

    JavaScript中好用的解构用法详解 什么是解构 在JavaScript中,解构是一种使得能够从数组或者对象中快速提取值、封装成一个变量或变量组的语法。 数组解构 数组的解构就是对数组的值进行“一一对应的提取”操作 基本用法 基本语法如下: let [a, b, c] = [1, 2, 3]; console.log(a); //1 console.lo…

    JavaScript 2023年5月18日
    00
  • JavaScript中5个常用的对象

    当我在学习JavaScript时,我发现其中的Object类型有很多种,有些我根本没有听说过。经过深入研究后,我总结了JavaScript中最常用的5个对象类型,并在下面进行了详细解释和示例说明。 1. Array对象 数组对象是JavaScript中最常用的一个类型。它允许我们将数据存储在一个变量中,并按索引号访问每个数据,它还提供了很多有用的方法和属性,…

    JavaScript 2023年5月27日
    00
  • Zend Framework处理Json数据方法详解

    Zend Framework处理Json数据方法详解 什么是Json? Json(JavaScript Object Notation)是一种轻量级数据交互格式,易于阅读和编写,同时易于机器解析和生成。Json格式是基于JavaScript语言的一个子集,但是Json是独立于语言的。Json数据结构包括对象、数组、值、字符串和Boolean值。 使用Zend…

    JavaScript 2023年5月28日
    00
  • JavaScript实现显示隐藏表单文字

    当我们需要提供更多的内容或者选项时,经常会用到表单,但是大量的表单元素很容易造成页面的混乱。因此,有时候我们需要将表单元素隐藏起来,只将必要的内容展示在页面上。这时,我们可以使用 JavaScript 帮助我们实现显示/隐藏表单文字。 下面是一条实现的完整攻略: 添加 HTML 元素 为了实现显示/隐藏表单文字,我们需要使用 JavaScript 操作 HT…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部