JS+CSS實現炫酷光感效果
阿新 • • 發佈:2020-09-08
JS+CSS帶你實現炫酷光感效果,供大家參考,具體內容如下
效果一:(螺旋式沉浸視覺感受)
效果二:(旋渦式遠觀視覺感受)
實現程式碼:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>光感效果</title> </head> <style> html,body{ height: 100%; overflow: hidden; } body{ background-color: #c08eaf; } .main{ /* 中心點 */ width: 8px; height: 8px; /* background-color: aqua; */ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); /* *景深,修改此屬性可獲得如上圖展示的不同效果 *如:圖一的perspective為400px *圖二的perspective為800px *修改為其它值還可獲得更多效果 */ perspective: 800px; } .main i{ /* 動點 */ width: 8px; height: 8px; border-radius: 50%; background:white; box-shadow: 0 0 10px 0 white; position: absolute; /* 動畫 */ animation: run 3s ease-in-out infinite; } /* .main i:nth-child(1){ transform: rotate(0deg) translateX(80px); } */ /* 動畫 */ @keyframes run{ 0%{ opacity: 0; } 10%{ opacity: 1; } 100%{ opacity: 1; /* 3D動畫效果 */ transform: translate3d(0,560px); } } </style> <body> <div class="main" id="main"> </div> </body> <script type="text/javascript"> //獲取元素 var m = document.getElementById("main"); for(var i = 0;i<60;i++){ //建立元素 var newNode = document.createElement("i"); //新增元素 m.appendChild(newNode) //設定旋轉角度 及x軸方向位移距離 newNode.style.transform=`rotate(${i*12}deg) translateX(80px)` //設定動畫延遲 newNode.style.animationDelay=`${i*0.05}s` } </script> </html>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。