仿写css小项目(超简单)——加载动画

2024-03-27 10:08

本文主要是介绍仿写css小项目(超简单)——加载动画,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

从B站上看到的小项目,炫酷又简单。

HTML模块:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><!-- 引用 --><link rel="stylesheet" href="style.css">
</head><body><div class="loader"><span></span><span></span><span></span><h2>Loading...</h2></div>
</body></html>

 CSS模块:

* {/* 清除默认边距 */margin: 0;padding: 0;/* box-sizing: border-box;元素的总高度和宽度包含内边距和边框(padding 与 border) : */box-sizing: border-box;
}body {/* display: flex; 弹性布局*/display: flex;/*justify-content: center;表示居中排列 */justify-content: center;/* 居中对齐弹性盒的各项 <div> 元素: */align-items: center;/* 设置背景颜色 */background-color: rgb(79, 80, 87);/* 设置段落的最小高度 */min-height: 100vh;
}.loader {/* position的属性之一:relative(相对定位):生成相对定位的元素,通过top,bottom,left,right的设置相对于其正常(原先本身)位置进行定位。可通过z-index进行层次分级。   */position: relative;width: 200px;height: 200px;display: flex;justify-content: center;align-items: center;
}.loader span {position: absolute;top: 0;left: 0;width: 100%;height: 100%;/*  */border: 2px solid skyblue;pointer-events: none;/* 语法:animation: name duration timing-function delay iteration-count direction fill-mode play-state; */animation: animate 5s linear infinite;
}/* 这里的椭圆数值 用到的网址:https://mdbootstrap.com/docs/standard/tools/design/fancy-border-radius/*/.loader span:nth-child(1) {border-radius: 44% 56% 58% 42% / 52% 49% 51% 48%;
}.loader span:nth-child(2) {animation-direction: reverse;border-radius: 73% 27% 20% 80% / 40% 33% 67% 60%;
}.loader span:nth-child(3) {animation-duration: 3s;border-radius: 42% 58% 64% 36% / 66% 33% 67% 34%;
}@keyframes animate {0% {transform: rotate(0deg);}100% {transform: rotate(360deg);}
}.loader h2 {color: skyblue;font-family: consolas;font-weight: 500;box-shadow: 2px 0 0 #fff;/* 将超出的部分进行隐藏 */overflow: hidden;/* 语法:animation: name duration timing-function delay iteration-count direction fill-mode play-state; */animation: textTyping 3s linear infinite;
}/*定义动画,keyframe是关键帧,里面的百分比要是整数  */@keyframes textTyping {0% {width: 0px;}20% {width: 131.96px;}
}

这篇关于仿写css小项目(超简单)——加载动画的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/851743

相关文章

vue基于ElementUI动态设置表格高度的3种方法

《vue基于ElementUI动态设置表格高度的3种方法》ElementUI+vue动态设置表格高度的几种方法,抛砖引玉,还有其它方法动态设置表格高度,大家可以开动脑筋... 方法一、css + js的形式这个方法需要在表格外层设置一个div,原理是将表格的高度设置成外层div的高度,所以外层的div需要

IDEA运行spring项目时,控制台未出现的解决方案

《IDEA运行spring项目时,控制台未出现的解决方案》文章总结了在使用IDEA运行代码时,控制台未出现的问题和解决方案,问题可能是由于点击图标或重启IDEA后控制台仍未显示,解决方案提供了解决方法... 目录问题分析解决方案总结问题js使用IDEA,点击运行按钮,运行结束,但控制台未出现http://

解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题

《解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题》文章详细描述了在使用lombok的@Data注解标注实体类时遇到编译无误但运行时报错的问题,分析... 目录问题分析问题解决方案步骤一步骤二步骤三总结问题使用lombok注解@Data标注实体类,编译时

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

SpringBoot项目中Maven剔除无用Jar引用的最佳实践

《SpringBoot项目中Maven剔除无用Jar引用的最佳实践》在SpringBoot项目开发中,Maven是最常用的构建工具之一,通过Maven,我们可以轻松地管理项目所需的依赖,而,... 目录1、引言2、Maven 依赖管理的基础概念2.1 什么是 Maven 依赖2.2 Maven 的依赖传递机

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

详解如何在React中执行条件渲染

《详解如何在React中执行条件渲染》在现代Web开发中,React作为一种流行的JavaScript库,为开发者提供了一种高效构建用户界面的方式,条件渲染是React中的一个关键概念,本文将深入探讨... 目录引言什么是条件渲染?基础示例使用逻辑与运算符(&&)使用条件语句列表中的条件渲染总结引言在现代

详解Vue如何使用xlsx库导出Excel文件

《详解Vue如何使用xlsx库导出Excel文件》第三方库xlsx提供了强大的功能来处理Excel文件,它可以简化导出Excel文件这个过程,本文将为大家详细介绍一下它的具体使用,需要的小伙伴可以了解... 目录1. 安装依赖2. 创建vue组件3. 解释代码在Vue.js项目中导出Excel文件,使用第三

Java实现Excel与HTML互转

《Java实现Excel与HTML互转》Excel是一种电子表格格式,而HTM则是一种用于创建网页的标记语言,虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,下面我们就来看看... Excel是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言。虽然两

利用Python编写一个简单的聊天机器人

《利用Python编写一个简单的聊天机器人》这篇文章主要为大家详细介绍了如何利用Python编写一个简单的聊天机器人,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 使用 python 编写一个简单的聊天机器人可以从最基础的逻辑开始,然后逐步加入更复杂的功能。这里我们将先实现一个简单的