目錄
鑰匙要點
我們的聲音是心跳的聲音,重複了四次,它將像我們的CSS動畫一樣發出聲音。

肌肉

參見Pen 5A20EF9D5C68ABC42320AC73639F0E39 by sitepoint(@sitepoint)在codepen上。
>在同步CSS動畫與HTML5 Audio
>如何在不同的瀏覽器中與HTML5音頻同步CSS動畫?
我可以使用實時音頻流的CSS動畫嗎?
>為什麼我的CSS動畫不與我的HTML5音頻同步?您的CSS動畫沒有與您的HTML5音頻同步的原因有幾個。一個常見的問題是動畫和音頻持續時間不匹配。確保CSS動畫的持續時間與音頻文件的長度匹配。另外,請確保您的音頻文件在啟動動畫之前正確加載並播放。
我可以在移動設備上與HTML5音頻同步CSS動畫嗎? ,您可以在移動設備上與HTML5音頻同步CSS動畫。但是,請記住,與桌面瀏覽器相比,移動瀏覽器具有一些局限性和差異。例如,某些移動瀏覽器不允許自動播放音頻,因此您可能需要為音頻文件添加一個播放按鈕。
>
首頁 web前端 css教學 將CSS動畫與HTML5音頻同步

將CSS動畫與HTML5音頻同步

Feb 23, 2025 am 09:32 AM

將CSS動畫與HTML5音頻同步

鑰匙要點

  • > CSS和HTML可以使用HTML的元素組合為CSS動畫添加聲音效果。這可以通過JavaScript觸發,並且可以在某些情況下增強用戶體驗,例如藝術家和遊戲網站或兒童的內容。 >聲音動畫過程中最關鍵的部分是將CSS動畫調整為音頻,以確保准確的同步音頻視頻體驗。這涉及將動畫鍵幀同步到音頻計時數據。
  • >該元素用於將音頻引入頁面。 JavaScript用於操縱播放。在此示例中,按鈕用於啟動和重置軌道。 在不同的瀏覽器中,將CSS動畫與HTML5音頻同步的過程通常相同。但是,並非所有瀏覽器都支持所有HTML5音頻格式。因此,應提供多個音頻文件的來源,以確保與不同的瀏覽器的兼容性。
  • >
  • >與預錄的音頻文件相比,可以將CSS動畫與實時音頻流一起使用。需要Web音頻API來實時分析音頻流並相應地調整CSS動畫。
  • > CSS和HTML已經開設了一個豐富的競爭環境,用於在您的網頁,Web應用程序和電子書項目中添加多媒體內容。結合這兩種技術的一種創新方法是使用
  • >
  • 儘管網絡上的聲音並不普遍歡迎,但在某些情況下,它可以豐富用戶體驗而不會成為不必要的煩惱。例如藝術家和遊戲網站或兒童內容。在某些情況下,聲音甚至對殘疾訪客很有用。
  • >
>聲音動畫過程中最重要的部分是將您的CSS動畫調整為音頻,以獲得準確的同步音頻視頻體驗。在本文中,我將使用跳動風格的心臟的有趣示例將動畫鍵框同步到音頻數據的步驟。

>請參閱pen CSS動畫,帶有聲音:codepen上的sitepoint(@sitepoint)的心跳。

構建心臟

>我們需要的第一種成分是我們想要動畫的心。我們將使用CSS偽元素構建一個。即使僅通過偽元素,它也可以在HTML中構造而不是使用圖像,這使我們有機會動畫各種CSS屬性以創建一個更有趣的動畫。

>我們通常可以找到以這種方式構建形狀的多種方法,但是如果我們打算對其進行動畫製作,那麼值得思考幾何以及不同的結構選擇如何影響運動並簡化關鍵框架代碼。

>在這種情況下,最簡單的技術是在頂部使用兩個垂直矩形,旋轉並放置以重疊以形成心臟形狀。它們的尺寸是使用百分比設置的,並且絕對可以考慮一些幾何學考慮,因此可以通過更改容器尺寸來縮放原始形狀。矩形順時針旋轉45度,逆時針旋轉以形成心臟的左右部分。

將CSS動畫與HTML5音頻同步 將圓形的側面設置為兩個半徑值,以獲得橢圓形而不是圓形曲線,因此更自然的心形。由於矩形側長的比例為5/8,因此省略號RADII計算為50%/37.5%,僅能繞過不重疊的角。

現在剩下的就是調整矩形的轉換 - 原孔點,以便矩形在矩形重疊的正方形區域中心對齊。可以通過調整絕對位置聲明而不是使用變換原始方法來實現相同的外觀。但這後來會使密鑰幀代碼複雜化,因為它會迫使我們更詳細地控制位置,而不是依靠變換量表功能為我們完成工作。 在應用任何變換之前,應使用坐標系計算
<span><span>.heart::before, 
</span></span><span><span>.heart::after</span> {
</span>  <span>background-color: red;
</span>  <span>content: "";
</span>  <span>height: 80%;
</span>  <span>left: 25%;
</span>  <span>position: absolute;
</span>  <span>top: 2%;
</span>  <span>transform: translateZ(0) rotate(-45deg);
</span>  <span>width: 50%;    
</span><span>}
</span>
<span><span>.heart::after</span> {
</span>  <span>transform: translateZ(0) rotate(45deg);
</span><span>}</span>
登入後複製
登入後複製
登入後複製
轉換 - 原始點(因為變換可以影響坐標系,例如,旋轉()函數將坐標係與元素一起旋轉旋轉到)。同樣,側面長度比決定了這一點的位置:很容易看出X位置在矩形的中心為50%,但是Y位置計算為從頂部測得的矩形高度的68.75% (55*100%/80 = 68.75 %)。使用特定的對稱方法也可以在這裡支付,因為兩個矩形都共享相同的變換 - 原孔點位置。

<span><span>.heart::before,
</span></span><span><span>.heart::after</span> {
</span>  <span>border-radius: 50% 50% 0 0 / 37.5% 37.5% 0 0;
</span><span>}</span>
登入後複製
登入後複製
>現在我們有了美麗的對稱心形。我們可以為每個矩形添加一個插圖盒子陰影,以使其全部豐滿和3D。

心臟的聲音

>要將音頻介紹到頁面中,我們將

以上是將CSS動畫與HTML5音頻同步的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1655
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1252
29
C# 教程
1226
24
Google字體可變字體 Google字體可變字體 Apr 09, 2025 am 10:42 AM

我看到Google字體推出了新設計(Tweet)。與上一次大型重新設計相比,這感覺更加迭代。我幾乎無法分辨出區別

如何使用HTML,CSS和JavaScript創建動畫倒計時計時器 如何使用HTML,CSS和JavaScript創建動畫倒計時計時器 Apr 11, 2025 am 11:29 AM

您是否曾經在項目上需要一個倒計時計時器?對於這樣的東西,可以自然訪問插件,但實際上更多

HTML數據屬性指南 HTML數據屬性指南 Apr 11, 2025 am 11:50 AM

您想了解的有關HTML,CSS和JavaScript中數據屬性的所有信息。

如何通過CSS選擇第一個類名為item的子元素? 如何通過CSS選擇第一個類名為item的子元素? Apr 05, 2025 pm 11:24 PM

在元素個數不固定的情況下如何通過CSS選擇第一個指定類名的子元素在處理HTML結構時,常常會遇到元素個數不�...

為什麼Flex佈局中的紫色斜線區域會被誤認為是'溢出空間”? 為什麼Flex佈局中的紫色斜線區域會被誤認為是'溢出空間”? Apr 05, 2025 pm 05:51 PM

關於Flex佈局中紫色斜線區域的疑問在使用Flex佈局時,你可能會遇到一些令人困惑的現象,比如在開發者工具(d...

使Sass更快的概念證明 使Sass更快的概念證明 Apr 16, 2025 am 10:38 AM

在一個新項目開始時,Sass彙編發生在眼睛的眨眼中。感覺很棒,尤其是當它與browsersync配對時,它重新加載

在前端開發中,如何使用CSS和JavaScript實現類似Windows 10設置界面的探照燈效果? 在前端開發中,如何使用CSS和JavaScript實現類似Windows 10設置界面的探照燈效果? Apr 05, 2025 pm 10:21 PM

在前端開發中如何實現類似Windows...

我們如何創建一個在SVG中生成格子呢模式的靜態站點 我們如何創建一個在SVG中生成格子呢模式的靜態站點 Apr 09, 2025 am 11:29 AM

格子呢是一塊圖案布,通常與蘇格蘭有關,尤其是他們時尚的蘇格蘭語。在Tar​​tanify.com上,我們收集了5,000多個格子呢

See all articles