如何使用HTML和CSS建立滑動文字揭示動畫?
你可能在不同的網站上見過滑動文字揭示動畫,例如個人作品集網站,甚至不同的影片內容,這為使用者提供了不同的體驗,並且文字感覺更生動。滑動文字動畫可以使用HTML和CSS輕鬆製作,這將吸引訪問我們網站的使用者。
在這篇文章中,我們將瞭解如何僅使用HTML和CSS建立滑動文字揭示動畫。
如何建立滑動動畫?
讓我們討論一下可以用於建立滑動動畫的方法。動畫的開始將顯示我們的第一個文字,在本例中為“早上好”,然後文字將向左滑動,然後第二個文字“你今天過得如何”將透過向右滑動而顯示。
我們將使用關鍵幀屬性將動畫分成不同的部分,以便最終動畫看起來更流暢。讓我們看看關鍵幀屬性的語法。
語法
@keyframes appear @keyframes slide @keyframes reveal
您可以在上面的程式碼中看到使用了keyframes屬性。在keyframes出現時,我們將設定第一個文字的顯示方式。
在keyframes slide中,我們將文字向側面移動。
在keyframes reveal中,我們將顯示整個文字的其餘部分。
示例
為了更好地理解該屬性的功能,讓我們來看一個我們將建立動畫的示例。
<!DOCTYPE html> <html lang="en"> <head> <title>Example of</title> <style> .container { overflow: hidden; width: 80%; margin: 0 auto; padding: 20px; } .slider { display: flex; transition: transform 0.5s ease-in-out; } .slide { width: 100%; text-align: center; font-size: 72px; font-weight: bold; color: #333; } .slider.slide-1 { transform: translateX(0%); } .slider.slide-2 { transform: translateX(-100%); } .slider.slide-3 { transform: translateX(-200%); } </style> </head> <body> <div class="container"> <div class="slider"> <div class="slide">A</div> <div class="slide">B</div> <div class="slide">C</div> <div class="slide">D</div> <div class="slide">E</div> <div class="slide">F</div> </div> </div> <script> var currentSlide = 1; var slider = document.querySelector('.slider'); setInterval(function () { currentSlide++; if (currentSlide > 26) { currentSlide = 1; } slider.classList.remove('slide-' + (currentSlide - 1)); slider.classList.add('slide-' + currentSlide); }, 1000); </script> </body> </html>
在上面的程式碼中,我們建立了一個動畫,該動畫以0.5秒的過渡時間顯示字母,使用者可以調整時間間隔和字型大小以適應使用者的特定用例。
可以透過使用HTML和CSS更改字母的數量和字母本身來更改輸出,或者使用者可以使用JavaScript建立一個數組並進行迴圈以方便操作。
示例
在這個例子中,我們將進行一些基本的樣式設定,例如新增背景顏色,設定對齊方式等。然後,我們將使用animation屬性,之後我們將使用keyframes來動畫每一幀,以便我們獲得更流暢的輸出。
<!DOCTYPE html> <html lang="en"> <head> <title>Example of using the keyframe</title> <style> body { background: black; } .text { width: 20%; top: 50%; position: absolute; left: 40%; border-bottom: 5px solid white; overflow: hidden; animation: animate 2s linear forwards; } .text h1 { color: white; } @keyframes animate { 0% { width: 0px; height: 0px; } 30% { width: 50px; height: 0px; } 60% { width: 50px; height: 80px; } } </style> </head> <body> <div class="text"> <h1> Hi How's your day going?<h1> </body> </html>
上面的程式碼是組合程式碼,它將給我們以下輸出。
這就是使用HTML和CSS程式碼後的輸出。
結論
關鍵幀可以用來指定特定幀的規則,我們也可以在其中使用不同的樣式,以便屬性每次都會改變。關鍵幀的規範是使用百分比完成的,例如0%表示動畫的開始,100%表示動畫的結束,規則也可以具有“from”或“to”,也表示動畫的開始和結束。
在這篇文章中,我們看到了如何使用HTML和CSS建立文字滑動動畫。