StealThis .dev
页面 困难

Music — Hip-Hop / Club Landing

A loud, street-styled hip-hop and club-night landing built with vanilla HTML, CSS and JavaScript. A high-contrast hero pairs a chrome-metallic condensed title with an acid-lime accent, a CSS-drawn boombox and spinning cassette, a thumping equalizer and a looping track marquee. Below sit a latest-drop album showcase with a shared simulated player and working scrubber, per-track play and like toggles, a tour-dates list with sold-out states, a hover-reactive merch grid, a visualizer block and a sticky stream CTA.

在 Lab 中打开
html css vanilla-js
目标: JS HTML

代码

Hip-Hop / Club Landing

A bold, high-contrast landing page for BLOK CITY, a fictional hip-hop artist on Def·Row Records promoting the new album Concrete Gospel. The palette is pure street: a near-black stage, a metallic chrome gradient on the condensed Archivo Black headings, and an acid-lime accent that snaps off the dark. The hero pairs a chrome-plated title and “Play album” / “Tour dates” CTAs with a fully CSS-drawn boombox — twin speakers, a spinning cassette and a built-in equalizer that shake and pulse when playback starts. A JS-driven marquee of track names loops seamlessly across the top.

A single simulated transport drives every play control on the page: the hero button, the album cover, and each row in the tracklist all share one timer-based player, so hitting play anywhere lights up the equalizer, rattles the boombox and advances the now-playing readout. The latest-drop showcase shows a CSS-drawn cover and a six-track list with per-track play and heart toggles, play counts and durations, plus a draggable, clickable, keyboard-operable scrubber (role="slider") that seeks the current track. Below, a tour-dates list reveals on hover and fires “Tickets” feedback (with line-through sold-out states), a merch grid lifts and accents on hover with an add-to-cart counter, and a visualizer block plays a strobing acid waveform with its own simulated clock.

Everything is vanilla JS with no frameworks, build step or audio files — playback, the marquee, the visualizer and the equalizer “bump” are all driven by timers, requestAnimationFrame and CSS transforms, and a small toast() helper surfaces feedback. A sticky stream CTA slides in past the hero and hides near the footer. The layout is responsive down to ~360px and respects prefers-reduced-motion.

Illustrative UI only — fictional artists, albums, tracks, and data. No real audio playback.