您好,登錄后才能下訂單哦!
這篇文章主要介紹了CSS如何實現一個簡單的Loading效果的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇CSS如何實現一個簡單的Loading效果文章都會有所收獲,下面我們一起來看看吧。
1.使用Animation動畫實現Loading
Animation是CSS3新增的一個模塊,它可以用來創建非常復雜的動畫效果。這里我們通過Animation來創建一個Loading的效果。
首先在HTML中添加一個用于Loading效果的容器:
<div class="loading"> <div class="loading-circle"></div> <div class="loading-circle"></div> <div class="loading-circle"></div> </div>
接下來,在CSS中定義一個關鍵幀動畫,用于旋轉“圓圈”。
@keyframes rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
然后為.loading-circle類設置樣式,使其成為一個圓形,并在其中使用上述定義的動畫。
.loading-circle { width: 20px; height: 20px; border-radius: 50%; background-color: #333; margin: 0 10px; animation: rotate 1.5s ease-in-out infinite; }
最后,在.css-loading中設置容器的樣式,使其居中于頁面,并適當調整“圓圈”的位置和大小。
.loading { display: flex; justify-content: center; align-items: center; } .loading-circle:nth-child(1) { transform: translateY(-30px); } .loading-circle:nth-child(2) { transform: translateY(30px); }
完整的實現代碼如下:
@keyframes rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .loading-circle { width: 20px; height: 20px; border-radius: 50%; background-color: #333; margin: 0 10px; animation: rotate 1.5s ease-in-out infinite; } .loading { display: flex; justify-content: center; align-items: center; } .loading-circle:nth-child(1) { transform: translateY(-30px); } .loading-circle:nth-child(2) { transform: translateY(30px); }
2.使用Transition過渡實現Loading
除了Animation之外,我們還可以使用CSS中的Transition來實現Loading效果。
我們同樣在HTML中添加一個容器作為Loading的展示區域:
<div class="loading-2"> <div class="loading-circle-2"></div> <div class="loading-circle-2"></div> <div class="loading-circle-2"></div> </div>
在CSS中,我們為.loading-circle-2類定義了初始狀態和最終狀態,并使用Transition來實現狀態之間的平滑過渡。
.loading-circle-2 { width: 20px; height: 20px; border-radius: 50%; background-color: #333; margin: 0 10px; transform: scale(0); transition: transform 0.5s ease 0.2s; } .loading-2 .loading-circle-2:nth-child(1) { animation: delay 0.2s linear infinite; } .loading-2 .loading-circle-2:nth-child(2) { animation: delay 0.3s linear infinite; } .loading-2 .loading-circle-2:nth-child(3) { animation: delay 0.4s linear infinite; } @keyframes delay { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1); } }
最后,我們在.loading-2元素上設置樣式,使其居中于頁面。
完整的實現代碼如下:
.loading-circle-2 { width: 20px; height: 20px; border-radius: 50%; background-color: #333; margin: 0 10px; transform: scale(0); transition: transform 0.5s ease 0.2s; } .loading-2 .loading-circle-2:nth-child(1) { animation: delay 0.2s linear infinite; } .loading-2 .loading-circle-2:nth-child(2) { animation: delay 0.3s linear infinite; } .loading-2 .loading-circle-2:nth-child(3) { animation: delay 0.4s linear infinite; } @keyframes delay { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1); } } .loading-2 { display: flex; justify-content: center; align-items: center; }
關于“CSS如何實現一個簡單的Loading效果”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“CSS如何實現一個簡單的Loading效果”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。