1. 程式人生 > 程式設計 >JS+CSS實現炫酷光感效果

JS+CSS實現炫酷光感效果

JS+CSS帶你實現炫酷光感效果,供大家參考,具體內容如下

效果一:(螺旋式沉浸視覺感受)

JS+CSS實現炫酷光感效果

效果二:(旋渦式遠觀視覺感受)

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>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。