Back to Home
Login
Edit Pen: test1
Created by: martinmara021
Created at: 2025-01-03 19:25:00
HTML Code
<!-- Inspired by JunKiyoshi (@junkiyoshi) https://x.com/junkiyoshi/status/1874788659142242580 https://junkiyoshi.com/openframeworks20250102/ --> <div class="scene"> <div class="texts"> <div class="text" style="--text: 0"> <span style="--i: 0">C</span> <span style="--i: 1.25">S</span> <span style="--i: 2.5">S</span> <span style="--i: 4.5">i</span> <span style="--i: 5.5">s</span> <span style="--i: 7">a</span> <span style="--i: 8">w</span> <span style="--i: 9">e</span> <span style="--i: 10">s</span> <span style="--i: 11">o</span> <span style="--i: 12">m</span> <span style="--i: 13">e</span> </div> <div class="text" style="--text: 1"> <span style="--i: 0">C</span> <span style="--i: 1.25">S</span> <span style="--i: 2.5">S</span> <span style="--i: 4.5">i</span> <span style="--i: 5.5">s</span> <span style="--i: 7">a</span> <span style="--i: 8">w</span> <span style="--i: 9">e</span> <span style="--i: 10">s</span> <span style="--i: 11">o</span> <span style="--i: 12">m</span> <span style="--i: 13">e</span> </div> <div class="text" style="--text: 2"> <span style="--i: 0">C</span> <span style="--i: 1.25">S</span> <span style="--i: 2.5">S</span> <span style="--i: 4.5">i</span> <span style="--i: 5.5">s</span> <span style="--i: 7">a</span> <span style="--i: 8">w</span> <span style="--i: 9">e</span> <span style="--i: 10">s</span> <span style="--i: 11">o</span> <span style="--i: 12">m</span> <span style="--i: 13">e</span> </div> <div class="text" style="--text: 3"> <span style="--i: 0">C</span> <span style="--i: 1.25">S</span> <span style="--i: 2.5">S</span> <span style="--i: 4.5">i</span> <span style="--i: 5.5">s</span> <span style="--i: 7">a</span> <span style="--i: 8">w</span> <span style="--i: 9">e</span> <span style="--i: 10">s</span> <span style="--i: 11">o</span> <span style="--i: 12">m</span> <span style="--i: 13">e</span> </div> </div> </div>
CSS Code
@import url(\"https://fonts.googleapis.com/css?family=Roboto: 700\"); *, *::before, *::after { padding: 0; margin: 0; box-sizing: border-box; } body { font-family: Roboto, sans-serif; background-color: #000; color: #fff; min-height: 100vh; display: grid; place-items: center; overflow: hidden; perspective: 600px; * { transform-style: preserve-3d; } } .scene { position: relative; * { position: absolute; } } .texts { font-size: 6vmin; animation: texts 12s infinite linear; &::after { content: \'\'; position: absolute; inset: -7.5em -1.5em; background-image: linear-gradient(to right, transparent, 10%, black, 90%, transparent); } } .text { animation: text 8s calc(var(--text) * -2s) infinite linear; color: hsl(calc(var(--text) * 90) 75% 75%); span { inset: -1em; display: grid; place-items: center; font-weight: 700; user-select: none; transform: translateY(calc((var(--i) - 6) * 0.6em)) rotateY(calc(var(--i) * 20deg)) translateZ(1.5em) rotateZ(-40deg); } } @keyframes texts { from { transform: rotateZ(0deg) rotateX(20deg) rotateZ(360deg); } to { transform: rotateZ(360deg) rotateX(20deg) rotateZ(0deg); } } @keyframes text { to { rotate: y -1turn; } }
JavaScript Code
Go Back