微信小程序?qū)崿F(xiàn)自定義加載圖標(biāo)功能

效果圖

創(chuàng)新互聯(lián)建站主要從事成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)關(guān)嶺,10余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575

微信小程序?qū)崿F(xiàn)自定義加載圖標(biāo)功能

實現(xiàn)思路

1.首先通過HTML+CSS實現(xiàn)加載動畫的靜態(tài)效果;

2.根據(jù)需求給每個動畫設(shè)計不同的動畫效果。

例如第一個加載圖標(biāo)的靜態(tài)繪制

1、首先確定動畫的盒子寬高;

2、設(shè)置盒子中每一個長方形的寬高以及定位(注意:此處需要將長方形的旋轉(zhuǎn)中心點移動到長方形的右側(cè)邊終點,方便后期以該點旋轉(zhuǎn)。);

3、通過長方形盒子的偽元素,設(shè)置顯示的長方形背景和寬高,同時進行定位。

4、由于在第二步的時候,已經(jīng)將旋轉(zhuǎn)中心移動,此處我們直接對每一個盒子中長方形進行旋轉(zhuǎn)(注意:旋轉(zhuǎn)角度 = 360 / 盒子中長方形個數(shù))。

.circle-line{
  width: 100px;
  height: 100px;
  display: inline-block;
  position: relative;
}
.circle-line text{
  display: block;
  width: 50%;
  height: 5px;
  opacity: .7;
  position: absolute;
  top: calc(50% - 2.5px);
  left: 0px;
  transform-origin: center right; 
}
.circle-line text::before{
  content: '';
  display: block;
  width: 15px;
  height: 5px;
  position: absolute;
  top: 0;
  right: 10px;
  background-color: blue;
}
.circle-line text:nth-child(1){
  transform: rotate(0deg);
}
.circle-line text:nth-child(2){
  transform: rotate(45deg);
}
.circle-line text:nth-child(3){
  transform: rotate(90deg);
}
.circle-line text:nth-child(4){
  transform: rotate(135deg);
}
.circle-line text:nth-child(5){
  transform: rotate(180deg);
}
.circle-line text:nth-child(6){
  transform: rotate(225deg);
}
.circle-line text:nth-child(7){
  transform: rotate(270deg);
}
.circle-line text:nth-child(8){
  transform: rotate(315deg);
}

動畫制作

觀察發(fā)現(xiàn)動畫只是針對每個長方形的透明度進行改變,所以動畫采用從0.05到0.9的透明度循環(huán)改變。

@keyframes circle {
  0%{
    opacity: 0.05;
  }
  100%{
    opacity: 0.9;
  }
}

進行動畫綁定

.circle-line text{
  animation: circle 1.5s linear infinite; 
}

動畫綁定完成,發(fā)現(xiàn)所有的整個圖標(biāo)一起顯示消失,那么也就是缺少了對單個個體的動畫處理,延遲動畫時間,使其依次漸變。

單個動畫處理

.circle-line text:nth-child(1){
  animation-delay: 0.2s;
}
.circle-line text:nth-child(2){
  animation-delay: 0.4s;
}
.circle-line text:nth-child(3){
  animation-delay: 0.6s;
}
.circle-line text:nth-child(4){
  animation-delay: 0.8s;
}
.circle-line text:nth-child(5){
  animation-delay: 1s;
}
.circle-line text:nth-child(6){
  animation-delay: 1.2s;
}
.circle-line text:nth-child(7){
  animation-delay: 1.4s;
}
.circle-line text:nth-child(8){
  animation-delay: 1.6s;
}

注意:單個動畫延遲的時間必須超過動畫執(zhí)行的總時間,防止一個動畫執(zhí)行完成后的卡頓。

總結(jié)

以上所述是小編給大家介紹的微信小程序?qū)崿F(xiàn)自定義加載圖標(biāo)功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對創(chuàng)新互聯(lián)網(wǎng)站的支持!

網(wǎng)站標(biāo)題:微信小程序?qū)崿F(xiàn)自定義加載圖標(biāo)功能
本文來源:http://muchs.cn/article18/ihgjdp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、定制網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站改版、虛擬主機、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名