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.
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.
Brutalist Audio Player
A brutalist audio player component with responsive design, dark mode support, and no JavaScript.
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