CSS按鈕波紋是一種在用戶點(diǎn)擊時(shí)為按鈕添加動畫效果的技術(shù)。這種技術(shù)給用戶帶來了更好的反饋,強(qiáng)化了交互體驗(yàn)。下面我們來看一下CSS按鈕波紋的代碼實(shí)現(xiàn)。
/* HTML *//* CSS */ .ripple-btn { position: relative; overflow: hidden; padding: 12px 28px; background-color: #0079FF; color: #fff; border-radius: 4px; font-size: 16px; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2); } .ripple-btn::after { content: ""; display: block; position: absolute; width: 100%; height: 100%; top: 0; left: 0; pointer-events: none; background-image: radial-gradient(circle, #fff 10%, transparent 10.01%); background-repeat: no-repeat; background-position: 50%; transform: scale(10, 10); opacity: 0; transition: transform 0.5s, opacity 1s; } .ripple-btn:active::after { transform: scale(0, 0); opacity: 0.3; transition: 0s; }
首先我們創(chuàng)建一個(gè)按鈕,樣式包括一些基本的樣式,如背景色、字體顏色、陰影等等。其次,我們使用偽元素::after來創(chuàng)建一個(gè)層用于實(shí)現(xiàn)波紋效果。最后,我們使用:active偽類選擇器來觸發(fā)這個(gè)波紋效果。
在這個(gè)代碼中,實(shí)現(xiàn)動畫效果的核心是scale()和opacity屬性的變化。在:active狀態(tài)下,我們把波紋的scale和opacity屬性從原始值(10,0.3)變?yōu)椋?,0)并取消過渡動畫,實(shí)現(xiàn)一個(gè)瞬間消失的效果。
至此,我們就掌握了CSS按鈕波紋的實(shí)現(xiàn)方法,大家可以根據(jù)自己的需求來進(jìn)行調(diào)整。