CSS可以實現很多酷炫的動畫效果,其中一種就是掃描動畫效果。這種效果通常用于科幻場景或高科技元素的網站設計中。下面我們來看一個用CSS實現的掃描動畫效果圖。
.scan-effect { position: relative; width: 500px; height: 300px; background-color: black; overflow: hidden; } .scan-effect::before { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background-color: rgba(0, 255, 255, 0.5); transform: skewX(45deg); animation: scan 4s infinite; } @keyframes scan { 0% { transform: skewX(45deg) translateX(-100%); } 100% { transform: skewX(45deg) translateX(100%); } }
該效果的HTML結構非常簡單,只需要一個帶有.scan-effect類名的div容器即可。CSS中利用::before偽元素來實現掃描線。這個偽元素的寬度和高度都為100%,背景顏色是半透明的青色。
偽元素的起點是在掃描容器的左側,而終點則是在容器的右側。利用動畫,將偽元素從左側滑動到右側,就可以實現一條橫向的掃描線。
注意,在實現這個效果時,需要在偽元素的transform屬性中使用skewX()方法,將偽元素旋轉45度以得到斜角視覺效果。
最后,我們給偽元素的動畫屬性添加infinite值,讓它無限循環。這樣就能一直保持掃描線的效果了。
下一篇css手風琴制作