您好,登錄后才能下訂單哦!
小編給大家分享一下怎么用純css畫一個跳動心,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
先給大家看效果圖:
實(shí)現(xiàn)原理:
1.可以把這個心分為兩部分,兩個長方形 ;
分別設(shè)置 border-radius;
讓兩個圖形重合后,分別設(shè)置transform: rotate(),設(shè)置的rotate()值要相反,一個正值,一個負(fù)值;
在設(shè)置其中一個的 left 值 就成了
為了看起來有立體感,可以設(shè)置左邊的 box-shadow 陰影 ;
再配合@keyframes,transform屬性,實(shí)現(xiàn)跳動效果。
代碼實(shí)例:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>純css畫一下心</title> <style> body{ height: 100%; margin: 0; } .demo{ width: 1px; height: 1px; margin: 300px auto; position: relative; animation: tiaodong .8s linear infinite; } .demo::before,.demo::after{ content: ''; position: absolute; width: 80px; height: 120px; background-color: red; border-radius: 50px 50px 0 0; } .demo::after{ left: 28px; transform: rotate(45deg); } .demo::before{ transform: rotate(-45deg); box-shadow: -5px -5px 10px grey; } @keyframes tiaodong{ 0%{ transform: scale(1); } 50%{ transform: scale(1.05); } 100%{ transform: scale(1); } } </style> </head> <body> <div class="demo"></div> </body> </html>
用的是 after 和 before 偽元素實(shí)現(xiàn)的,沒有考慮兼容性,在 IE 10 之前就顯示不出來了。
可以用 span 元素替換掉 after 和 before 解決掉。
需要加上: -ms-transform 。
若是用 span 元素畫的話,需要右邊的塊設(shè)置 z-index 屬性。
看完了這篇文章,相信你對怎么用純css畫一個跳動心有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。