CSS拆紅包特效是一種非常有趣的效果,可以用來吸引用戶的注意力。這種特效的實(shí)現(xiàn)需要使用CSS3的動(dòng)畫和過渡效果,以及偽元素和transform屬性。下面我們來看一下如何實(shí)現(xiàn)這個(gè)特效。
.red-packet { position: relative; display: inline-block; width: 100px; height: 100px; border-radius: 50%; background-color: #e60012; cursor: pointer; } .red-packet:before { content: ''; position: absolute; top: 20%; left: 20%; width: 60%; height: 60%; background-color: #fff; border-radius: 50%; z-index: 1; transition: all 0.3s ease-in-out; transform: scale(0); } .red-packet:after { content: ''; position: absolute; top: 15%; left: 15%; width: 70%; height: 70%; border-radius: 50%; background-color: #fdd600; z-index: 2; transition: all 0.3s ease-in-out; transform: scale(0); } .red-packet:hover:before { transform: scale(1); } .red-packet:hover:after { transform: scale(1); } .red-packet:hover { animation: shake 0.5s ease-in-out; } @keyframes shake { 0%, 100% { transform: rotate(0deg); } 20%, 60% { transform: rotate(15deg); } 40%, 80% { transform: rotate(-15deg); } }
首先我們創(chuàng)建一個(gè)紅色圓形元素,使用偽元素before和after分別創(chuàng)建兩個(gè)小圓,用來模擬拆開紅包的效果。在偽元素before和after上設(shè)置transform: scale(0),使得它們縮小到0的狀態(tài)。在:hover偽類中,將它們的縮放比例設(shè)置為1,這樣就能形成拆開的效果。同時(shí),我們給紅包元素添加一個(gè)動(dòng)畫,使其在hover的時(shí)候產(chǎn)生顫抖的效果。
這就是CSS拆紅包特效的實(shí)現(xiàn)方法,你可以在自己的項(xiàng)目中嘗試使用這種效果,增加你的網(wǎng)站的趣味性。
下一篇css 指針變手