Components Audio Player Skeuomorphic Audio Player

Skeuomorphic Audio Player

An audio player component designed with a Skeuomorphic style, pastel color scheme, and complex interface. It supports dark mode and is responsive, suitable for e-commerce sites.

Preview

HTML Code

<div class="flex items-center justify-center min-h-screen bg-gray-50 dark:bg-gray-900 p-4">
  <div class="w-full max-w-md bg-gradient-to-br from-gray-200 to-gray-300 dark:from-gray-700 dark:to-gray-800 rounded-2xl shadow-xl p-6 relative overflow-hidden transform transition-all duration-300 hover:scale-[1.02] active:scale-[0.98] focus:scale-[1.01] outline-none"
    tabindex="0" aria-label="Audio Player with complex controls">

    <!-- Top Controls and Display -->
    <div class="flex items-center justify-between mb-6">

      <div class="text-gray-600 dark:text-gray-300">
        <i class="fas fa-bars text-xl"></i>
      </div>

      <div class="text-center flex-grow">
        <h3 class="text-sm font-semibold text-gray-700 dark:text-gray-200 uppercase tracking-wide">Now Playing</h3>
        <p class="text-xs text-gray-500 dark:text-gray-400">Pastel Vibes</p>
      </div>

      <div class="text-gray-600 dark:text-gray-300">
        <i class="fas fa-heart text-xl"></i>
      </div>
    </div>

    <!-- Album Art / Display Area -->
    <div class="relative w-48 h-48 mx-auto mb-8 rounded-full shadow-inner-lg transform transition-transform duration-300 group hover:rotate-3 active:rotate-[-3deg] focus:rotate-2">
      <img src="https://picsum.photos/300/300?random=1" alt="Album Art" class="w-full h-full rounded-full object-cover shadow-md border-4 border-gray-400 dark:border-gray-600 transform transition-transform duration-300 group-hover:scale-105" />
      <div class="absolute inset-0 rounded-full border-2 border-dashed border-gray-400 dark:border-gray-500 animate-spin-slow"></div>
    </div>

    <!-- Song Info -->
    <div class="text-center mb-6">
      <h2 class="text-2xl font-bold text-gray-800 dark:text-gray-100 mb-1">Dreamy Horizon</h2>
      <p class="text-md text-gray-600 dark:text-gray-300">Acoustic Serenity</p>
    </div>

    <!-- Progress Bar (Skeuomorphic) -->
    <div class="mb-8">
      <div class="h-3 bg-gray-300 dark:bg-gray-700 rounded-full shadow-inner-sm relative">
        <div class="absolute inset-y-0 left-0 bg-gradient-to-r from-pink-300 to-purple-400 dark:from-pink-500 dark:to-purple-600 rounded-full w-2/3 shadow-md"></div>
        <div class="absolute -right-2 top-1/2 -translate-y-1/2 w-5 h-5 bg-white border-2 border-gray-400 dark:border-gray-600 rounded-full shadow-lg cursor-pointer transform hover:scale-110 transition-transform duration-200" role="slider" aria-valuenow="66" aria-valuemin="0" aria-valuemax="100" aria-label="Playback progress"></div>
      </div>
      <div class="flex justify-between text-xs text-gray-500 dark:text-gray-400 mt-2">
        <span>2:30</span>
        <span>4:15</span>
      </div>
    </div>

    <!-- Main Controls -->
    <div class="flex items-center justify-around mb-8">

      <button class="w-12 h-12 flex items-center justify-center rounded-full bg-gray-100 dark:bg-gray-800 shadow-md hover:shadow-lg transition-all duration-200 transform hover:scale-110 active:scale-95 focus:outline-none focus:ring-2 focus:ring-gray-400 focus:ring-opacity-75" aria-label="Previous track">
        <i class="fas fa-backward text-xl text-gray-600 dark:text-gray-300"></i>
      </button>

      <button class="w-16 h-16 flex items-center justify-center rounded-full bg-gradient-to-br from-pink-300 to-purple-400 dark:from-pink-500 dark:to-purple-600 shadow-xl hover:shadow-2xl transition-all duration-200 transform hover:scale-110 active:scale-95 focus:outline-none focus:ring-2 focus:ring-purple-400 focus:ring-opacity-75" aria-label="Play/Pause">
        <i class="fas fa-play text-2xl text-white"></i>
      </button>

      <button class="w-12 h-12 flex items-center justify-center rounded-full bg-gray-100 dark:bg-gray-800 shadow-md hover:shadow-lg transition-all duration-200 transform hover:scale-110 active:scale-95 focus:outline-none focus:ring-2 focus:ring-gray-400 focus:ring-opacity-75" aria-label="Next track">
        <i class="fas fa-forward text-xl text-gray-600 dark:text-gray-300"></i>
      </button>
    </div>

    <!-- Additional Controls -->
    <div class="flex items-center justify-around text-gray-500 dark:text-gray-400 text-lg">
      <button class="hover:text-gray-700 dark:hover:text-gray-200 transition-colors duration-200 transform hover:scale-110 active:scale-95 focus:outline-none focus:ring-2 focus:ring-gray-400 focus:ring-opacity-75" aria-label="Repeat">
        <i class="fas fa-redo-alt"></i>
      </button>
      <button class="hover:text-gray-700 dark:hover:text-gray-200 transition-colors duration-200 transform hover:scale-110 active:scale-95 focus:outline-none focus:ring-2 focus:ring-gray-400 focus:ring-opacity-75" aria-label="Shuffle">
        <i class="fas fa-random"></i>
      </button>
      <button class="hover:text-gray-700 dark:hover:text-gray-200 transition-colors duration-200 transform hover:scale-110 active:scale-95 focus:outline-none focus:ring-2 focus:ring-gray-400 focus:ring-opacity-75" aria-label="Volume">
        <i class="fas fa-volume-up"></i>
      </button>
      <button class="hover:text-gray-700 dark:hover:text-gray-200 transition-colors duration-200 transform hover:scale-110 active:scale-95 focus:outline-none focus:ring-2 focus:ring-gray-400 focus:ring-opacity-75" aria-label="Playlist">
        <i class="fas fa-list"></i>
      </button>
    </div>

  </div>
</div>

<!-- To ensure icons are displayed, include Font Awesome via CDN in your project's HTML head -->
<!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css" /> -->

Related Components

Retro Audio Player

Component Implementing an Audio Player with Retro/Vintage Design, Responsive effects and Dark Theme support.

Open

Brutalist Audio Player

A brutalist audio player component with responsive design, dark mode support, and no JavaScript.

Open

Retro Audio Player

Audio Player Component with Retro/Vintage design, Pastel color scheme, Complex complexity, Social Media purpose, Responsive, Dark theme support, HTML only with Tailwind CSS

Open