본문 바로가기
CSS

css shadow

by 영감은어디에 2026. 3. 9.

<div class="demo">
  <div class="text-3d">Shadow</div>
</div>

<div class="demo">
  <div class="wave-container">
    <span style="--i:0">F</span>
    <span style="--i:1">L</span>
    <span style="--i:2">O</span>
    <span style="--i:3">A</span>
    <span style="--i:4">T</span>
    <span style="--i:5">I</span>
    <span style="--i:6">N</span>
    <span style="--i:7">G</span>
  </div>
</div>
    /* ════════════════════════════════
       DEMO 1 — Static 3D lift shadow
       (이미지 상단 span 스타일)
    ════════════════════════════════ */
    .text-3d {
      font-size: clamp(100px, 20vw, 150px);
      color: #ffffff;
      letter-spacing: 0.05em;
      text-transform: uppercase;


      text-shadow:
        0  1px 0 #7aaac8,
        0  2px 0 #7aaac8,
        0  3px 0 #7aaac8,
        0  4px 0 #7aaac8,
        0  5px 0 #7aaac8,
        0  6px 0 transparent,
        0  7px 0 transparent,
        0  8px 0 transparent,
        0  9px 0 transparent,
        0 10px 10px rgba(30, 80, 130, 0.35);

      /* animation: move .4s ease-in-out infinite alternate; */
    }

    /* ════════════════════════════════
       DEMO 2 — Staggered wave animation
       (이미지 하단 span + keyframes)
    ════════════════════════════════ */
    .wave-container {
      display: flex;
      gap: 0;
    }

    .wave-container span {
      font-size: clamp(100px, 20vw, 150px);
      color: #ffffff;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      display: inline-block;
      
      text-shadow:
        0  2px 0 #7aaac8,
        0  3px 0 #7aaac8,
        0  4px 0 #7aaac8,
        0  5px 0 #7aaac8,
        0  6px 0 transparent,
        0  7px 0 transparent,
        0  8px 0 transparent,
        0  9px 0 transparent,
        0 10px 10px rgba(30, 80, 130, 0.35);

      animation: move .9s ease-in-out infinite alternate;
      animation-delay: calc(var(--i) * .1s);
    }

  

    /* ═══════════════════
       @keyframes move
    ═══════════════════ */
    @keyframes move {
      to {
        top: -5px;
        position: relative;

        text-shadow:
          0  1px 0 #9bbdd6,
          0  2px 0 #9bbdd6,
          0  3px 0 #9bbdd6,
          0  4px 0 #9bbdd6,
          0  5px 0 #9bbdd6,
          0  6px 0 #9bbdd6,
          0  7px 0 #9bbdd6,
          0  8px 0 #9bbdd6,
          0  9px 0 #9bbdd6,
          0 30px 20px rgba(20, 60, 110, 0.25);
      }
    }