HTML Audio Player in Black Theme

Written by @kerixa 4 April 2021

Below we have provided an audio player that, in addition to being better than the default HTML audio player, with the help of css it has a black theme and the progress bar is a gradient of blue and purple colors. The background of this code is a white and gray gradient so this audio player is very efficient and beautiful for music downloading websites.

Code Snippet:

                                                
                                                <!-- this script is provided by https://www.htmlbestcodes.com coded by: Kerixa Inc. -->
<style>
html {
    height: 100%;
}

body {
    min-height: 100%;
    font-family: 'Advent Pro', sans-serif;
    font-weight: 500;
    padding: 3.75em 1.875em; /* 60 30 */
}

strong {
    font-weight: 700;
}

#wrapper {
    width: 30em; /* 480 */
    height: 8.75em; /* 140 */
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -4.375em 0 0 -15em; /* 70 240 */
}

/*
		PLAYER
	*/

.audioplayer {
    height: 2.5em; /* 40 */
    color: #fff;
    text-shadow: 1px 1px 0 #000;
    border: 1px solid #222;
    position: relative;
    z-index: 1;
    background: #333;
}

/* mini mode (fallback) */

.audioplayer-mini {
    width: 2.5em; /* 40 */
    margin: 0 auto;
}

/* player elements: play/pause and volume buttons, played/duration timers, progress bar of loaded/played */

.audioplayer > div {
    position: absolute;
}


/* play/pause button */

.audioplayer-playpause {
    width: 2.5em; /* 40 */
    height: 100%;
    text-align: left;
    text-indent: -9999px;
    cursor: pointer;
    z-index: 2;
    top: 0;
    left: 0;
}

.audioplayer:not(.audioplayer-mini) .audioplayer-playpause {
    border-right: 1px solid #555;
    border-right-color: rgba( 255, 255, 255, .1 );
}

.audioplayer-mini .audioplayer-playpause {
    width: 100%;
}

.audioplayer-playpause:hover,
.audioplayer-playpause:focus {
    background-color: #222;
}

.audioplayer-playpause a {
    display: block;
}

.audioplayer-stopped .audioplayer-playpause a {
    width: 0;
    height: 0;
    border: 0.5em solid transparent; /* 8 */
    border-right: none;
    border-left-color: #fff;
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -0.5em 0 0 -0.25em; /* 8 4 */
}

.audioplayer-playing .audioplayer-playpause a {
    width: 0.75em; /* 12 */
    height: 0.75em; /* 12 */
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -0.375em 0 0 -0.375em; /* 6 */
}

.audioplayer-playing .audioplayer-playpause a:before,
.audioplayer-playing .audioplayer-playpause a:after {
    width: 40%;
    height: 100%;
    background-color: #fff;
    content: '';
    position: absolute;
    top: 0;
}

.audioplayer-playing .audioplayer-playpause a:before {
    left: 0;
}

.audioplayer-playing .audioplayer-playpause a:after {
    right: 0;
}


/* timers */

.audioplayer-time {
    width: 4.375em; /* 70 */
    height: 100%;
    line-height: 2.375em; /* 38 */
    text-align: center;
    z-index: 2;
    top: 0;
}

.audioplayer-time-current {
    border-left: 1px solid #111;
    border-left-color: rgba( 0, 0, 0, .25 );
    left: 2.5em; /* 40 */
}

.audioplayer-time-duration {
    border-right: 1px solid #555;
    border-right-color: rgba( 255, 255, 255, .1 );
    right: 2.5em; /* 40 */
}

.audioplayer-novolume .audioplayer-time-duration {
    border-right: 0;
    right: 0;
}


/* progress bar of loaded/played */

.audioplayer-bar {
    height: 0.875em; /* 14 */
    background-color: #222;
    cursor: pointer;
    z-index: 1;
    top: 50%;
    right: 6.875em; /* 110 */
    left: 6.875em; /* 110 */
    margin-top: -0.438em; /* 7 */
}

.audioplayer-novolume .audioplayer-bar {
    right: 4.375em; /* 70 */
}

.audioplayer-bar div {
    width: 0;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.audioplayer-bar-loaded {
    background-color: #333;
    z-index: 1;
}

.audioplayer-bar-played {
    background: #007fd1;
    z-index: 2;
}


/* volume button */

.audioplayer-volume {
    width: 2.5em; /* 40 */
    height: 100%;
    border-left: 1px solid #111;
    border-left-color: rgba( 0, 0, 0, .25 );
    text-align: left;
    text-indent: -9999px;
    cursor: pointer;
    z-index: 2;
    top: 0;
    right: 0;
}

.audioplayer-volume:hover,
.audioplayer-volume:focus {
    background-color: #222;
}

.audioplayer-volume-button {
    width: 100%;
    height: 100%;
}

.audioplayer-volume-button a {
    width: 0.313em; /* 5 */
    height: 0.375em; /* 6 */
    background-color: #fff;
    display: block;
    position: relative;
    z-index: 1;
    top: 40%;
    left: 35%;
}

.audioplayer-volume-button a:before,
.audioplayer-volume-button a:after {
    content: '';
    position: absolute;
}

.audioplayer-volume-button a:before {
    width: 0;
    height: 0;
    border: 0.5em solid transparent; /* 8 */
    border-left: none;
    border-right-color: #fff;
    z-index: 2;
    top: 50%;
    right: -0.25em;
    margin-top: -0.5em; /* 8 */
}

.audioplayer:not(.audioplayer-muted) .audioplayer-volume-button a:after {
    width: 0.313em; /* 5 */
    height: 0.313em; /* 5 */
    border: 0.25em double #fff; /* 4 */
    border-width: 0.25em 0.25em 0 0; /* 4 */
    left: 0.563em; /* 9 */
    top: -0.063em; /* 1 */
    -webkit-border-radius: 0 0.938em 0 0; /* 15 */
    -moz-border-radius: 0 0.938em 0 0; /* 15 */
    border-radius: 0 0.938em 0 0; /* 15 */
    -webkit-transform: rotate( 45deg );
    -moz-transform: rotate( 45deg );
    -ms-transform: rotate( 45deg );
    -o-transform: rotate( 45deg );
    transform: rotate( 45deg );
}


/* volume dropdown */

.audioplayer-volume-adjust {
    height: 6.25em; /* 100 */
    cursor: default;
    position: absolute;
    left: 0;
    right: -1px;
    top: -9999px;
    background: #333;
}

.audioplayer-volume:not(:hover) .audioplayer-volume-adjust {
    opacity: 0;
}

.audioplayer-volume:hover .audioplayer-volume-adjust {
    top: auto;
    bottom: 100%;
}

.audioplayer-volume-adjust > div {
    width: 40%;
    height: 80%;
    background-color: #222;
    cursor: pointer;
    position: relative;
    z-index: 1;
    margin: 30% auto 0;
}

.audioplayer-volume-adjust div div {
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #007fd1;
}

.audioplayer-novolume .audioplayer-volume {
    display: none;
}


/* CSS3 decorations */

body {
    -webkit-box-shadow: inset 0 0 18.75em rgba( 0, 0, 0, .5 ); /* 300 */
    -moz-box-shadow: inset 0 0 18.75em rgba( 0, 0, 0, 5 ); /* 300 */
    box-shadow: inset 0 0 18.75em rgba( 0, 0, 0, .5 ); /* 300 */
}

.audioplayer {
    -webkit-box-shadow: inset 0 1px 0 rgba( 255, 255, 255, .15 ), 0 0 1.25em rgba( 0, 0, 0, .5 ); /* 20 */
    -moz-box-shadow: inset 0 1px 0 rgba( 255, 255, 255, .15 ), 0 0 1.25em rgba( 0, 0, 0, .5 ); /* 20 */
    box-shadow: inset 0 1px 0 rgba( 255, 255, 255, .15 ), 0 0 1.25em rgba( 0, 0, 0, .5 ); /* 20 */
}

.audioplayer-volume-adjust {
    -webkit-box-shadow: -2px -2px 2px rgba( 0, 0, 0, .15 ), 2px -2px 2px rgba( 0, 0, 0, .15 );
    -moz-box-shadow: -2px -2px 2px rgba( 0, 0, 0, .15 ), 2px -2px 2px rgba( 0, 0, 0, .15 );
    box-shadow: -2px -2px 2px rgba( 0, 0, 0, .15 ), 2px -2px 2px rgba( 0, 0, 0, .15 );
}

.audioplayer-bar,
.audioplayer-volume-adjust > div {
    -webkit-box-shadow: -1px -1px 0 rgba( 0, 0, 0, .5 ), 1px 1px 0 rgba( 255, 255, 255, .1 );
    -moz-box-shadow: -1px -1px 0 rgba( 0, 0, 0, .5 ), 1px 1px 0 rgba( 255, 255, 255, .1 );
    box-shadow: -1px -1px 0 rgba( 0, 0, 0, .5 ), 1px 1px 0 rgba( 255, 255, 255, .1 );
}

.audioplayer-volume-adjust div div,
.audioplayer-bar-played {
    -webkit-box-shadow: inset 0 0 5px rgba( 255, 255, 255, .5 );
    -moz-box-shadow: inset 0 0 5px rgba( 255, 255, 255, .5 );
    box-shadow: inset 0 0 5px rgba( 255, 255, 255, .5 );
}

.audioplayer-playpause,
.audioplayer-volume a {
    -webkit-filter: drop-shadow( 1px 1px 0 #000 );
    -moz-filter: drop-shadow( 1px 1px 0 #000 );
    -ms-filter: drop-shadow( 1px 1px 0 #000 );
    -o-filter: drop-shadow( 1px 1px 0 #000 );
    filter: drop-shadow( 1px 1px 0 #000 );
}

.audioplayer,
.audioplayer-volume-adjust {
    background: -webkit-gradient( linear, left top, left bottom, from( #444 ), to( #222 ) );
    background: -webkit-linear-gradient( top, #444, #222 );
    background: -moz-linear-gradient( top, #444, #222 );
    background: -ms-radial-gradient( top, #444, #222 );
    background: -o-linear-gradient( top, #444, #222 );
    background: linear-gradient( to bottom, #444, #222 );
}

.audioplayer-bar-played {
    background: -webkit-gradient( linear, left top, right top, from( #007fd1 ), to( #c600ff ) );
    background: -webkit-linear-gradient( left, #007fd1, #c600ff );
    background: -moz-linear-gradient( left, #007fd1, #c600ff );
    background: -ms-radial-gradient( left, #007fd1, #c600ff );
    background: -o-linear-gradient( left, #007fd1, #c600ff );
    background: linear-gradient( to right, #007fd1, #c600ff );
}

.audioplayer-volume-adjust div div {
    background: -webkit-gradient( linear, left bottom, left top, from( #007fd1 ), to( #c600ff ) );
    background: -webkit-linear-gradient( bottom, #007fd1, #c600ff );
    background: -moz-linear-gradient( bottom, #007fd1, #c600ff );
    background: -ms-radial-gradient( bottom, #007fd1, #c600ff );
    background: -o-linear-gradient( bottom, #007fd1, #c600ff );
    background: linear-gradient( to top, #007fd1, #c600ff );
}

.audioplayer-bar,
.audioplayer-bar div,
.audioplayer-volume-adjust div {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

.audioplayer {
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
}

.audioplayer-volume-adjust {
    -webkit-border-top-left-radius: 2px;
    -webkit-border-top-right-radius: 2px;
    -moz-border-radius-topleft: 2px;
    -moz-border-radius-topright: 2px;
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
}

.audioplayer *,
.audioplayer *:before,
.audioplayer *:after {
    -webkit-transition: color .25s ease, background-color .25s ease, opacity .5s ease;
    -moz-transition: color .25s ease, background-color .25s ease, opacity .5s ease;
    -ms-transition: color .25s ease, background-color .25s ease, opacity .5s ease;
    -o-transition: color .25s ease, background-color .25s ease, opacity .5s ease;
    transition: color .25s ease, background-color .25s ease, opacity .5s ease;
}


/* responsiveness */

@media only screen and ( max-width: 32.5em ) /* 520 */
{
body {
    -webkit-box-shadow: inset 0 0 9.375em rgba( 0, 0, 0, .5 ); /* 150 */
    -moz-box-shadow: inset 0 0 9.375em rgba( 0, 0, 0, 5 ); /* 150 */
    box-shadow: inset 0 0 9.375em rgba( 0, 0, 0, .5 ); /* 150 */
}

#wrapper {
    width: 90%;
    height: auto;
    position: static;
    padding: 1.25em; /* 20 */
    margin: 0;
}
}
</style>

<div id="wrapper">

	<audio preload="auto" controls>
		<source src="https://www.htmlbestcodes.com/files/track.mp3" />
	</audio>

</div>
<script src="https://code.jquery.com/jquery-2.1.3.min.js"></script>
<script src="https://www.htmlbestcodes.com/files/audioplayer.js"></script>


<script>
$(function () {
    $('audio').audioPlayer();
});
</script><a target='_blank' href='https://www.htmlbestcodes.com' style='font-size: 8pt; text-decoration: none'>Html Best Codes</a>                                                
                                            

Example:


About @kerixa

I am Krishna Eydat. I studied Software Engineering at University of Waterloo in Canada. I lead a few tech companies. I am passionate about the way we are connected. I would like to be part of something big or be the big deal!

K

Comments


Here you can leave us commments. Let us know what you think about this code tutorial!

0 / 300

TRENDING POST
1
2
3
4
5
VISITORS
Online Users: 12
Recent Members: sahjahan, fk khan, Proper, Jenisha, Mr Joseph Charles
advertisement 2