css簡單易懂的加載動畫,看不會算我輸好吧

效果展示

loading2

步驟

第一階段

先準備結構,并且放置12個div,每一個div旋轉30*n度, 做一個圓圈

dom

<div class="modal"><div class="loading"><div class="item1"></div><div class="item2"></div><div class="item3"></div><div class="item4"></div><div class="item5"></div><div class="item6"></div><div class="item7"></div><div class="item8"></div><div class="item9"></div><div class="item10"></div><div class="item11"></div><div class="item12"></div></div>
</div>

css

.modal {position: relative;height: 100vh;display: flex;justify-content: center;align-items: center;background: #5b5b5b;
}
.loading div {position: absolute;width: 5px;height: 20px;background-color: orange;border-radius: 10px;
}.loading .item1 {transform: rotate(0deg) translate(0, 120%);animation-delay: 0s;
}.loading .item2 {transform: rotate(30deg) translate(0, 120%);animation-delay: 0s;
}.loading .item3 {transform: rotate(60deg) translate(0, 120%);animation-delay: 0s;
}.loading .item4 {transform: rotate(90deg) translate(0, 120%);animation-delay: 0s;
}.loading .item5 {transform: rotate(120deg) translate(0, 120%);animation-delay: 0s;
}.loading .item6 {transform: rotate(150deg) translate(0, 120%);animation-delay: 0s;
}.loading .item7 {transform: rotate(180deg) translate(0, 120%);animation-delay: 0s;
}.loading .item8 {transform: rotate(210deg) translate(0, 120%);animation-delay: 0s;
}.loading .item9 {transform: rotate(240deg) translate(0, 120%);animation-delay: 0s;
}.loading .item10 {transform: rotate(270deg) translate(0, 120%);animation-delay: 0s;
}.loading .item11 {transform: rotate(300deg) translate(0, 120%);animation-delay: 0s;
}.loading .item12 {transform: rotate(330deg) translate(0, 120%);animation-delay: 0s;
}
image-20240711093401122

第二階段

使用 @keyframes 透明度變化制作一個 一閃一閃的效果

image-20240711094645884

loading1

第三階段

錯開時間的delay,讓一閃一閃的動畫錯開,形成轉圈的效果

image-20240711094545914

Css

.modal {position: relative;height: 100vh;display: flex;justify-content: center;align-items: center;background: #5b5b5b;
}.loading div {position: absolute;width: 5px;height: 20px;background-color: orange;border-radius: 10px;animation: loading 1.2s linear infinite;
}@keyframes loading {from {opacity: 1;}to{opacity: 0.15;}
}.loading .item1 {transform: rotate(0deg) translate(0, 120%);animation-delay: -1.2s;
}.loading .item2 {transform: rotate(30deg) translate(0, 120%);animation-delay: -1.1s;
}.loading .item3 {transform: rotate(60deg) translate(0, 120%);animation-delay: -1s;
}.loading .item4 {transform: rotate(90deg) translate(0, 120%);animation-delay: -0.9s;
}.loading .item5 {transform: rotate(120deg) translate(0, 120%);animation-delay: -0.8s;
}.loading .item6 {transform: rotate(150deg) translate(0, 120%);animation-delay: -0.7s;
}.loading .item7 {transform: rotate(180deg) translate(0, 120%);animation-delay: -0.6s;
}.loading .item8 {transform: rotate(210deg) translate(0, 120%);animation-delay: -0.5s;
}.loading .item9 {transform: rotate(240deg) translate(0, 120%);animation-delay: -0.4s;
}.loading .item10 {transform: rotate(270deg) translate(0, 120%);animation-delay: -0.3s;
}.loading .item11 {transform: rotate(300deg) translate(0, 120%);animation-delay: -0.2s;
}.loading .item12 {transform: rotate(330deg) translate(0, 120%);animation-delay: -0.1s;
}

loading2

具體用途

在獲得請求響應前,頁面是沒有數據的

此時加這個頁面 提示用戶需等待

說白了就是防止用戶等的無聊,給他一個動畫讓他磨時間

請求得到200響應時取消動畫

具體dom和loading值取反,二者顯示一個
在這里插入圖片描述
在這里插入圖片描述

loading3

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/43611.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/43611.shtml
英文地址,請注明出處:http://en.pswp.cn/web/43611.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Spark 分布式彈性計算集(RDD)相關概念介紹

目錄 一、概述 二、RDD的核心概念 2.1 Partition 2.2 Partitioner 2.3 RDD的依賴關系 2.4 Stage 2.5 PreferredLocation 2.6 CheckPoint 三、RDD的持久化 3.1 概述 3.2 概念 3.3 RDD持久化級別 3.3.1 MEMORY_ONLY 3.3.2 MEMORY_AND_DISK 3.3.3 MEMORY_ONLY_SER …

基于語義的法律問答系統

第一步&#xff0c;準備數據集 第二步&#xff0c;構建索引數據集&#xff0c;問答對數據集&#xff0c;訓練數據集&#xff0c;召回評估數據集 第三步&#xff0c;構建dataloader,選擇優化器訓練模型&#xff0c;之后召回評估 第四步&#xff0c;模型動轉靜&#xff0c;之后…

Synchronized底層工作原理

Synchronized 是Java中最常用的內置鎖機制&#xff0c;用于確保多線程環境下的同步。其底層原理涉及到JVM&#xff08;Java虛擬機&#xff09;和字節碼指令。以下是 synchronized 的底層工作原理的詳細介紹&#xff1a; 1. 基本概念 對象頭&#xff08;Object Header&#xf…

【UE5.1 角色練習】15-槍械射擊——子彈發射物

目錄 效果 步驟 一、創建并發射子彈 二、優化子彈 效果 步驟 一、創建并發射子彈 1. 在前面的文章中&#xff08;【UE5.1 角色練習】06-角色發射火球-part1&#xff09;我們創建了藍圖“BP_Skill_FireBall” 這里我們復制一份命名為“BP_Ammo_5mm”&#xff0c;用于表示…

科技的成就(六十一)

567、數據虛擬化 用來描述所有數據管理方法的涵蓋性術語&#xff0c;這些方法允許應用程序檢索并管理數據&#xff0c;且不需要數據相關的技術細節&#xff0c;例如它格式化的方式或物理位置所在。數據整合的過程&#xff0c;以此獲得更多的數據信息&#xff0c;這個過程通常會…

SLAM中的塊矩陣與schur補

文章目錄 SLAM中的塊矩陣與schur補Schur補的另一種解釋對角塊矩陣的逆為各個塊的逆的組合 SLAM中的塊矩陣與schur補 Schur補的另一種解釋 Schur從概率角度來解釋是比較常見的一種推導&#xff0c;可以參考博客https://blog.csdn.net/weixin_41469272/article/details/1219944…

若依搭建 帝可得 售貨機 筆記

一、搭建項目 1.后端gitee鏈接&#xff1a; 啟動項目時記得修改mysql和redis的相關信息&#xff1b;創建項目相關數據庫&#xff0c;并導入初始化的SQL腳本 dkd-parent: 帝可得后臺管理系統 (gitee.com) 2.前端gitee鏈接&#xff1a; 啟動項目時記得安裝依賴&#xff1a;np…

Github Action 自動部署更新靜態網頁服務

本文首發于 Anyeの小站&#xff0c;點擊跳轉 獲得更優質的閱讀體驗 前言 貼一段胡話 在用過 應用&#xff1a;靜態網頁服務 之后&#xff0c;事實證明&#xff1a; 總而言之&#xff0c;自動化是一個很令人著迷的東西&#xff0c;擺脫重復繁瑣的工作&#xff0c;解放了雙手的…

JCR一區 | Matlab實現GAF-PCNN-MATT、GASF-CNN、GADF-CNN的多特征輸入數據分類預測/故障診斷

JJCR一區 | Matlab實現GAF-PCNN-MATT、GASF-CNN、GADF-CNN的多特征輸入數據分類預測/故障診斷 目錄 JJCR一區 | Matlab實現GAF-PCNN-MATT、GASF-CNN、GADF-CNN的多特征輸入數據分類預測/故障診斷分類效果格拉姆矩陣圖GAF-PCNN-MATTGASF-CNNGADF-CNN 基本介紹程序設計參考資料 分…

【45 Pandas+Pyecharts | 去哪兒海南旅游攻略數據分析可視化】

文章目錄 &#x1f3f3;??&#x1f308; 1. 導入模塊&#x1f3f3;??&#x1f308; 2. Pandas數據處理2.1 讀取數據2.2 查看數據信息2.3 日期處理&#xff0c;提取年份、月份2.4 經費處理2.5 天數處理 &#x1f3f3;??&#x1f308; 3. Pyecharts數據可視化3.1 出發日期_…

華南師范大學“大學生校外實踐教學基地”授牌儀式暨見習參觀活動圓滿結束

為促進校企合作的深入發展&#xff0c;培育出具有實際應用技能的人才&#xff0c;7月9日&#xff0c;華南師范大學數學科學院與廣東泰迪智能科技股份有限公司聯合開展“大學生校外實踐教學基地”授牌儀式暨見習參觀活動。華南師范大學數學科學院數據科學系主任陳艷男、副主任陳…

深入理解model.eval()與torch.no_grad()

model.eval() 使用model.eval()切換到測試模式&#xff0c;不會更新模型的w&#xff08;權重&#xff09;&#xff0c;b&#xff08;偏置&#xff09;參數通知dropout層和batchnorm層在train和val中間進行切換&#xff1a; 在train模式&#xff0c;dropout層會按照設定的參數p…

Idea 2023 使用GitLab提交代碼提示輸入Token

項目場景&#xff1a; 今天電腦換硬盤了&#xff0c;安裝了 IDEA2023 款的社區版開發工具&#xff0c;下載代碼后&#xff0c;提交并推送代碼到遠程服務器的時候&#xff0c;提示輸入Token&#xff0c;并不是用戶名和密碼。 問題描述 推送代碼到遠程GitLab本地倉庫的時候&…

單鏈表--續(C語言詳細版)

2.6 在指定位置之前插入數據 // 在指定位置之前插入數據 void SLTInsert(SLTNode** pphead, SLTNode* pos, SLTDataType x); 分為兩種情況&#xff1a;1. 插入的數據在鏈表中間&#xff1b;2. 插入的數據在鏈表的前面。 // 在指定位置之前插入數據 void SLTInsert(SLTNode** …

AI繪畫何以突飛猛進? 從歷史到技術突破, 一文讀懂火爆的AI繪畫發展史

前言 自從前段時間偶然間被當下AI繪畫的水平震住之后&#xff08;超越一切的AI作畫神器&#xff0c;和它創作的234個盔甲美女未來戰士&#xff09; &#xff0c;作者深感當今AI繪畫的飛速進展或許已遠超所有人的預期。 而這里的前因后果&#xff0c;包括AI繪畫的歷史&#xff…

十九.升職加薪系列-JVM優化-解決JVM性能瓶頸的JIT即時編譯器

前言 在很多年以前&#xff0c;做C或者C的程序員經常說Java語言的運行速度不如C或C&#xff0c;Java運行速度慢主要是因為它是解釋執行的&#xff0c;而C或C是編譯執行的&#xff0c;解釋執行需要通過JVM虛擬機將字節碼實時翻譯成機器碼&#xff08;邊翻譯邊執行&#xff09;&…

Rust 版本升級:rustup update stable 報錯

Rust 版本升級 rustup update stable 報錯 一、報錯內容 error: could not download file from ‘https://static.rust-lang.org/dist/channel-rust-stable.toml.sha256’ to ‘/Users/xxx/.rustup/tmp/rv6vdfu3eupwo64m_file’: failed to make network request: error sendi…

【實戰場景】@Transactional中使用for update的注意點

【實戰場景】Transactional中使用for update的注意點 開篇詞&#xff1a;干貨篇&#xff1a;知識回顧注意點1.鎖的范圍和粒度&#xff1a;2.事務的隔離級別&#xff1a;3.死鎖&#xff1a;4.性能影響&#xff1a;5.事務的邊界&#xff1a;6.異常處理&#xff1a;7. 數據庫和存儲…

【漏洞復現】網神 SecGate 3600 防火墻 sys_export_conf_local_save 任意文件讀取

免責聲明&#xff1a; 本文內容旨在提供有關特定漏洞或安全漏洞的信息&#xff0c;以幫助用戶更好地了解可能存在的風險。公布此類信息的目的在于促進網絡安全意識和技術進步&#xff0c;并非出于任何惡意目的。閱讀者應該明白&#xff0c;在利用本文提到的漏洞信息或進行相關測…

javaweb學習day5--《HTML篇》Springboot的模塊創建、HTML的相關知識點詳解

一、前言 從今天開始&#xff0c;就要啟動后端的學習了&#xff0c;Springboot會貫穿到底&#xff0c;一定要跟著小編嚴謹的去搭建Springboot環境&#xff0c;依賴添加的過程可能需要2分鐘左右&#xff0c;讀者們要耐心等待一下&#xff0c;搭建好Springboot之后才算正式的開始…