CSS聲音播放動畫是一種基于CSS和HTML5的動畫效果。通過CSS的偽元素和屬性,我們可以實現播放動畫以及增加聲音效果。具體實現方法如下:
/*加載音頻文件*/ @audio music { src: url('music.mp3'); } /*設置播放動畫*/ .play { animation: play-music 2s ease-in-out infinite; } /*設置聲音*/ .play::after { content: ""; background: url('speaker.svg'); width: 20px; height: 20px; display: inline-block; margin-left: 5px; } /*播放動畫*/ @keyframes play-music { 0% { transform: scale(1); } 50% { transform: scale(1.2); } 100% { transform: scale(1); } } /*點擊事件*/ .play::before { content: ""; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background: rgba(0, 0, 0, 0.2); } /*改變樣式*/ .play:active::before { background: rgba(0, 0, 0, 0.6); } /*控制播放和停止*/ .play:active::after { background: url('speaker-off.svg'); animation-play-state: paused; } .play:not(:active)::after { animation-play-state: running; }
以上代碼中,我們通過使用@audio來加載音頻文件,并使用偽元素::after來添加聲音圖標。然后通過@keyframes來定義播放動畫,實現循環播放。接著設置點擊事件,改變樣式和控制播放和停止。
在HTML中,我們可以使用一個按鈕來觸發播放動畫和聲音。
<button class="play" onclick="music.play()">Play</button>
最后,我們可以調整樣式來適應我們自己的需求,從而實現CSS聲音播放動畫效果。