矩阵雨(可复制源代码)

[复制链接]
七夏(UID:1) 发表于 2024-11-26 13:23:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×

  1. <html>
  2.   <head>
  3.     <meta charset="UTF-8" />
  4.     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  5.     <title>Cloud Rain</title>
  6.     <style>
  7.       @import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
  8.       * {
  9.         margin: 0;
  10.         padding: 0;
  11.         box-sizing: border-box;
  12.         font-family: "Poppins", sans-serif;
  13.       }

  14.       :root {
  15.         --clr: #0f0;
  16.       }

  17.       body {
  18.         display: flex;
  19.         justify-content: center;
  20.         align-items: center;
  21.         min-height: 100vh;
  22.         background: #000;
  23.         transform: scale(0.6);
  24.       }

  25.       .container {
  26.         position: relative;
  27.         top: 100px;
  28.         height: 400px;
  29.         width: 100%;
  30.         display: flex;
  31.         justify-content: center;
  32.         animation: animateColor 5s linear infinite;
  33.       }

  34.       @keyframes animateColor {
  35.         0% {
  36.           filter: hue-rotate(0deg);
  37.         }
  38.         100% {
  39.           filter: hue-rotate(360deg);
  40.         }
  41.       }

  42.       .container .cloud {
  43.         position: relative;
  44.         width: 300px;
  45.         /* height: 300px; */
  46.         z-index: 100;
  47.         filter: drop-shadow(0 0 35px var(--clr));
  48.       }

  49.       .container .cloud h2 {
  50.         position: absolute;
  51.         left: 50%;
  52.         transform: translateX(-50%);
  53.         white-space: nowrap;
  54.         color: #000;
  55.         font-size: 2em;
  56.         z-index: 1000;
  57.         font-weight: 400;
  58.         padding: 0 10px;
  59.         border-radius: 10px;
  60.         text-transform: uppercase;
  61.         background: var(--clr);
  62.       }

  63.       .container .cloud h2::before {
  64.         content: "";
  65.         position: absolute;
  66.         top: -115px;
  67.         left: 50%;
  68.         transform: translateX(-50%);
  69.         border-radius: 100px;
  70.         width: 120%;
  71.         height: 100px;
  72.         background: var(--clr);
  73.       }

  74.       .container .cloud h2::after {
  75.         content: "";
  76.         position: absolute;
  77.         top: -150px;
  78.         left: 25px;
  79.         width: 120px;
  80.         height: 120px;
  81.         border-radius: 50%;
  82.         background: var(--clr);
  83.         box-shadow: 120px -30px 0 10px var(--clr);
  84.       }

  85.       .container .cloud .drop {
  86.         position: absolute;
  87.         top: 60px;
  88.         height: 20px;
  89.         line-height: 20px;
  90.         color: var(--clr);
  91.         transform-origin: bottom;
  92.         animation: animate 2s linear infinite;
  93.       }

  94.       @keyframes animate {
  95.         0% {
  96.           transform: translateY(0) scaleY(0);
  97.           transform-origin: top;
  98.         }
  99.         10% {
  100.           transform: translateY(0) scaleY(0.25);
  101.           transform-origin: top;
  102.         }
  103.         20% {
  104.           transform: translateY(0) scaleY(1);
  105.           /* transform-origin: top; */
  106.         }

  107.         70% {
  108.           transform: translateY(300px) scaleY(1);
  109.           transform-origin: bottom;
  110.         }
  111.         80% {
  112.           transform: translateY(300px) scaleY(1);
  113.           transform-origin: bottom;
  114.         }
  115.         100% {
  116.           transform: translateY(300px) scaleY(0);
  117.           transform-origin: bottom;
  118.           text-shadow: -180px 0 0 var(--clr), 180px 0 var(--clr);
  119.         }
  120.       }
  121. </style>
  122.   </head>
  123.   <body>
  124.     <div class="container">
  125.       <div class="cloud">
  126.         <h2>Matrix Rain</h2>
  127.       </div>
  128.     </div>
  129.     <script>
  130.       function randomText() {
  131.         var text = "!@#$%^*()";
  132.         letters = text[Math.floor(Math.random() * text.length)];
  133.         return letters;
  134.       }
  135.       function rain() {
  136.         let cloud = document.querySelector(".cloud");
  137.         let e = document.createElement("div");
  138.         e.classList.add("drop");
  139.         cloud.appendChild(e);

  140.         let left = Math.floor(Math.random() * 300);
  141.         let size = Math.random() * 1.5;
  142.         let duration = Math.random() * 1;

  143.         e.innerText = randomText();
  144.         e.style.left = left + "px";
  145.         e.style.fontSize = 0.5 + size + "em";
  146.         e.style.animationDuration = 1 + duration + "s";

  147.         setTimeout(function () {
  148.           cloud.removeChild(e);
  149.         }, 2000);
  150.       }

  151.       setInterval(function () {
  152.         rain();
  153.       }, 20);
  154. </script>
  155.   </body>
  156. </html>
复制代码
小时候,看腻了农村的牛和马,长大后,来到了城里,才知道原来到处都是牛马!
全部回复0 显示全部楼层
暂无回复,精彩从你开始!

快速回帖

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于楼主

管理员
  • 主题

    710
  • 回答

    248
  • 积分

    1902
虚位以待,此位置招租

商务推广

    网盘拉新-短剧推广 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租