구성 요소 인터랙티브 컴포넌트 Interactive Components 구성 요소

Interactive Components 구성 요소

엔터테인먼트 및 미디어 플랫폼을 위해 설계된 미니멀하고 생동감 넘치며 단순한 대화형 구성 요소로, 재생/일시 중지 컨트롤, 진행률 표시줄 및 스피커 볼륨 컨트롤을 제공합니다. 완전한 응답성과 다크 모드 지원이 포함됩니다.

미리 보기

HTML 코드

<div class="p-4 sm:p-6 md:p-8 lg:p-10 bg-gradient-to-br from-emerald-50 to-cyan-50 dark:from-slate-800 dark:to-gray-900 min-h-screen flex items-center justify-center font-sans">
  <div class="w-full max-w-sm sm:max-w-md md:max-w-lg lg:max-w-xl p-6 sm:p-8 bg-white dark:bg-gray-800 rounded-2xl shadow-xl border border-gray-100 dark:border-gray-700 transition-all duration-300 ease-in-out">
    <div class="flex items-center space-x-4 mb-6 sm:mb-8">
      <div class="aspect-video w-20 sm:w-24 md:w-28 flex-shrink-0 bg-gray-200 dark:bg-gray-700 rounded-lg overflow-hidden shadow-md">
        <img src="https://picsum.photos/300/200?random=1" alt="Album Art" class="w-full h-full object-cover">
      </div>
      <div class="flex-grow min-w-0">
        <h3 class="text-lg sm:text-xl font-bold text-gray-900 dark:text-gray-50 truncate mb-1">
          Epic Soundtrack Loop
        </h3>
        <p class="text-sm sm:text-base text-cyan-600 dark:text-teal-400 truncate">
          Unknown Artist
        </p>
      </div>
    </div>

    <!-- Playback Controls -->
    <div class="flex justify-around items-center mb-6 sm:mb-8">
      <button class="p-2 sm:p-3 rounded-full bg-emerald-100 dark:bg-emerald-700 text-emerald-600 dark:text-white hover:bg-emerald-200 dark:hover:bg-emerald-600 transition-colors duration-200 focus:outline-none focus:ring-2 focus:ring-emerald-400 focus:ring-offset-2 dark:focus:ring-offset-gray-800">
        <svg class="w-5 h-5 sm:w-6 sm:h-6" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.707 10.293a1 1 0 010-1.414L10.586 6V7a1 1 0 011 1v4a1 1 0 01-1 1v1l-2.879-2.879a1 1 0 01-.11-.13V10.293zM10 18a8 8 0 100-16 8 8 0 000 16z" clip-rule="evenodd"></path></svg>
      </button>
      <button class="p-3 sm:p-4 rounded-full bg-cyan-500 dark:bg-cyan-600 text-white shadow-lg hover:bg-cyan-600 dark:hover:bg-cyan-700 transition-colors duration-200 focus:outline-none focus:ring-2 focus:ring-cyan-400 focus:ring-offset-2 dark:focus:ring-offset-gray-800">
        <svg class="w-6 h-6 sm:w-7 sm:h-7" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM9.555 7.168A1 1 0 008 8v4a1 1 0 001.555.832l3-2a1 1 0 000-1.664l-3-2z" clip-rule="evenodd"></path></svg>
        <!-- Or use pause icon: -->
        <!-- <svg class="w-6 h-6 sm:w-7 sm:h-7" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zM7 8a1 1 0 012 0v4a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v4a1 1 0 102 0V8a1 1 0 00-1-1z" clip-rule="evenodd"></path></svg> -->
      </button>
      <button class="p-2 sm:p-3 rounded-full bg-emerald-100 dark:bg-emerald-700 text-emerald-600 dark:text-white hover:bg-emerald-200 dark:hover:bg-emerald-600 transition-colors duration-200 focus:outline-none focus:ring-2 focus:ring-emerald-400 focus:ring-offset-2 dark:focus:ring-offset-gray-800">
        <svg class="w-5 h-5 sm:w-6 sm:h-6" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M12.293 10.293a1 1 0 011.414 0l2.879 2.879A1 1 0 0116 13V7a1 1 0 01-1-1v-1l-2.879 2.879a1 1 0 01-.13.11V10.293zM10 18a8 8 0 100-16 8 8 0 000 16z" clip-rule="evenodd"></path></svg>
      </button>
    </div>

    <!-- Progress Bar -->
    <div class="mb-6 sm:mb-8">
      <div class="h-2 bg-gray-200 dark:bg-gray-700 rounded-full overflow-hidden mb-2 relative">
        <div class="h-full bg-cyan-500 dark:bg-cyan-400 w-1/3 rounded-full absolute top-0 left-0 transition-all duration-300 ease-out" style="width: 33.33%;"></div>
        <div class="w-3 h-3 bg-cyan-700 dark:bg-cyan-300 rounded-full absolute top-1/2 -mt-1.5 left-1/3 -ml-1.5 shadow-md transform -translate-x-1/2 transition-all duration-300 ease-out"></div>
      </div>
      <div class="flex justify-between text-xs sm:text-sm text-gray-500 dark:text-gray-400">
        <span>2:15</span>
        <span>6:40</span>
      </div>
    </div>

    <!-- Volume Control -->
    <div class="flex items-center space-x-3 text-gray-600 dark:text-gray-300">
      <svg class="w-5 h-5 sm:w-6 sm:h-6 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.383 3.076A1 1 0 0110 4v12a1 1 0 01-1.707.707L4.586 13H2a1 1 0 01-1-1V8a1 1 0 011-1h2.586l3.707-3.707a1 1 0 011.09-.217zM14.293 7.293a1 1 0 011.414 0L17 8.586l1.293-1.293a1 1 0 111.414 1.414L18.414 10l1.293 1.293a1 1 0 01-1.414 1.414L17 11.414l-1.293 1.293a1 1 0 01-1.414-1.414L15.586 10l-1.293-1.293a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg>
      <div class="flex-grow h-1.5 bg-gray-200 dark:bg-gray-700 rounded-full relative">
        <div class="h-full bg-emerald-500 dark:bg-emerald-400 w-3/4 rounded-full absolute top-0 left-0 transition-all duration-300 ease-out" style="width: 75%;"></div>
        <div class="w-3 h-3 bg-emerald-700 dark:bg-emerald-300 rounded-full absolute top-1/2 -mt-1.5 left-3/4 -ml-1.5 shadow-md transform -translate-x-1/2 transition-all duration-300 ease-out"></div>
      </div>
    </div>
  </div>
</div>

관련 구성 요소

인터랙티브 컴포넌트

소셜 미디어 인터페이스를 위한 스큐어모픽 요소로 설계된 웹 구성 요소로, 보색 구성표와 어두운 테마 지원을 특징으로 합니다.

열다

Simple Dashboard 구성 요소

Material Design 원칙과 생생한 색 구성표를 갖춘 간단하고 반응이 빠른 대시보드 구성 요소입니다.

열다

Interactive Components 구성 요소

교육용 플랫폼용으로 설계된 인터랙티브 컴포넌트로, 따뜻한 일몰 그라디언트 톤, 부드러운 전환, 다크 모드 지원을 제공합니다. 여기에는 호버/포커스 시 모양이 변경되는 클릭 가능한 카드가 포함됩니다.

열다