Build a Media Player with HTML

Share this article

The possibilities for media in HTML have taken off with the introduction of the video and audio elements in HTML5. Now we can embed video and audio in websites without the need for proprietary technologies like Flash or Silverlight.

With browser support better than ever, and new technologies like WebVTT starting to arrive, now is a great time to get to know (or to revisit) these new HTML elements.

SitePoint has just launched Build Your Own HTML Media Player, a course that gets you up to speed with HTML5 media elements and how to take them to the next level with CSS and JavaScript.

Here’s a video from the course that gets the ball rolling, showing you how to structure the HTML code for a custom media player. (Later videos demonstrate how to build on this with CSS and JavaScript to create a fully functioning, custom media player.)

Loading the player…

You can download the source files for this demo on GitHub.

If you found this useful, check out the full course at SitePoint — which takes you from the basics right up to developing a fully functioning, custom media player, playing both audio and video.

Frequently Asked Questions (FAQs) about Building a Media Player in HTML

What are the basic HTML tags required to create a media player?

To create a media player in HTML, you need to use the

How can I make my media player responsive?

To make your media player responsive, you can use CSS. By setting the width of the video to 100% and the height to auto, the video player will scale according to the size of its container. This ensures that the media player will adapt to different screen sizes and orientations.

How can I add subtitles or captions to my media player?

You can add subtitles or captions to your media player using the tag. This tag is used within the

How can I customize the controls of my media player?

Customizing the controls of your media player requires JavaScript and CSS. You can hide the default controls by removing the ‘controls’ attribute from the

How can I make my media player compatible with different browsers?

To ensure compatibility with different browsers, you can provide multiple source files in different formats. The browser will use the first source file it supports. This can be done using multiple tags within the

How can I add a poster image to my media player?

You can add a poster image to your media player using the ‘poster’ attribute in the

How can I loop a video or audio in my media player?

You can loop a video or audio in your media player using the ‘loop’ attribute in the

How can I mute the audio in my media player?

You can mute the audio in your media player using the ‘muted’ attribute in the

How can I preload the video or audio in my media player?

You can preload the video or audio in your media player using the ‘preload’ attribute in the

How can I play a video or audio in fullscreen in my media player?

Playing a video or audio in fullscreen requires the Fullscreen API, which is a JavaScript API. You can use the ‘requestFullscreen’ method to make the video or audio element go fullscreen. This method must be run as a result of a user action, such as a click event.

Guilherme MullerGuilherme Muller
View Author

Guilherme is passionate about web development, especially HTML and CSS coding. With more than 10 years of experience, Guilherme works as a freelance web developer with clients of various fields, having published more than a hundred websites. Currently, Guilherme has his own small web development company in Curitiba, Brazil. When Guilherme is not coding, he’s usually running, reading, playing his cajón or travelling with his wife around Brazil and the world as “almost” backpackers.

CSSHTML 5HTML5 AudioHTML5 videomedia playerRalphMtutorial
Share this article
Read Next
Get the freshest news and resources for developers, designers and digital creators in your inbox each week