<div class="wrapper">
<section class="player">
<header class="player__header">
<img src="https://source.unsplash.com/user/5tep5" alt="" class="player__image">
<div class="player__image-overlay"></div>
</header>
<div class="track">
<span class="track__artist">Armin van Buuren</span>
<span class="track__name">Blue fear</span>
<div class="track__progress">
<div class="progress__bar"></div>
</div>
<div class="track__controls">
<button class="control__play fas fa-play"></button>
<button class="control__prev fas fa-backward"></button>
<button class="control__next fas fa-forward"></button>
<button class="control__shuffle fas fa-random"></button>
<button class="control__repeat fas fa-recycle"></button>
</div>
</div>
</section>
<footer class="page__footer">
Design on <a href="https://dribbble.com/shots/998479-Music" target="_blank">Dribbble.com</a>
</footer>
</div>
:root {
--image-player-height: 350px;
}
.page__footer {
position: absolute;
width: 100%;
height: 2rem;
line-height: 2rem;
background: #000;
color: #fff;
text-align: center;
bottom: 0;
}
.page_footer a,
.page_footer a:visited {
color: #fff;
}
.wrapper {
position: relative;
background: #ccc;
width: 100%;
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
}
.player {
-webkit-box-shadow: 3px 15px 10px 0px rgba(0, 0, 0, 0.1);
-moz-box-shadow: 3px 15px 10px 0px rgba(0, 0, 0, 0.1);
box-shadow: 3px 15px 10px 0px rgba(0, 0, 0, 0.1);
width: 400px;
height: auto;
background: #fff;
display: flex;
flex-direction: column;
border-radius: 10px;
overflow: hidden;
}
.player__header {
position: relative;
overflow: hidden;
}
.player__image {
height: var(--image-player-height);
object-fit: cover;
width: 100%;
}
.player__image-overlay {
position: absolute;
width: 100%;
height: var(--image-player-height);
background: rgba(0, 0, 0, 0.3);
top: 0;
}
.track {
padding: 2rem;
display: flex;
flex-direction: column;
}
.track__name,
.track__artist,
.track__controls {
display: block;
}
.track__name {
margin-bottom: 1.7rem;
}
.track__artist {
margin-bottom: 0.3rem;
}
.track__artist {
font-weight: bold;
}
.track__controls {
display: flex;
flex-direction: row;
justify-content: space-between;
}
.track__controls button {
-webkit-appearance: none;
background: #ccc;
border: 0;
width: 50px;
height: 50px;
border-radius: 100%;
}
.track__progress {
width: 100%;
background: #ccc;
margin-bottom: 1.5rem;
}
.progress__bar {
width: 35%;
height: 0.5rem;
background: green;
}
This Pen doesn't use any external JavaScript resources.