純 CSS 點擊音樂靜音是一個非常有趣的效果,不僅可以為網站添加音效,同時還可以讓用戶自由控制音樂開關,提升用戶體驗。下面,我們就來了解一下如何用 CSS 來實現這一效果。
/* 定義一個名為 btn 的按鈕樣式 */ .btn { display: inline-block; width: 40px; height: 40px; background: url('音樂開.png') no-repeat; } /* 定義一個名為 mute 的靜音樣式 */ .mute { background: url('音樂關.png') no-repeat; } /* 定義一個名為 audio 的音頻樣式 */ .audio { display: none; } /* 當按鈕點擊時,設置音頻樣式的播放和暫停狀態 */ .btn:active + .audio { animation: none !important; /* 取消默認的動畫效果 */ visibility: visible; height: auto; display: block; } /* 當靜音樣式被選中時,設置音頻樣式為靜音狀態 */ .mute:active + .audio { visibility: visible; height: auto; display: block; } /* 設置動畫效果,讓音頻樣式在播放和暫停時有過渡效果 */ @keyframes fadeIn { 0% {opacity: 0;} 100% {opacity: 1;} } /* 設置音頻樣式的動畫效果 */ .audio { animation: fadeIn 0.2s; visibility: hidden; height: 0; }
以上代碼主要是通過 CSS 的屬性選擇器來實現的。首先定義一個名為btn
的按鈕樣式,然后定義一個名為mute
的靜音樣式和一個名為audio
的音頻樣式,其中音頻樣式默認是隱藏的,這里使用了display: none
屬性。當按鈕被點擊時,設置音頻樣式的visibility
屬性為visible
,并且設置height: auto
,使其自適應高度。當靜音樣式被選中時,也做出相應的修改。同時,為了讓音頻樣式在播放和暫停時具有過渡效果,使用了動畫效果。