How to add video in HTML code?
Have you ever visited a website that instantly grabbed your
attention with a video? Whether it’s an exciting product demo, a step-by-step tutorial,
or a mesmerizing background effect, videos can completely transform the way
people interact with your site.
Adding videos not only makes your website look modern and
professional but also keeps visitors engaged for longer. Imagine showing off
your product in action, explaining complex ideas in seconds, or simply creating
an unforgettable first impression with a stunning background video. Sounds
awesome, right?
The best part? Including videos in your website is easier
than you think! With just a few lines of HTML and CSS, you can embed YouTube
videos, host your own, or even create a custom video player. In this tutorial,
we’ll guide you step-by-step through everything you need to know about adding
and customizing videos for your projects.
Whether you’re a beginner building your first site or
someone looking to add some creative flair, this guide is designed for you. So,
let’s roll up our sleeves and bring your website to life with videos!
Table of content
How to Add a Video in HTML?
How to Embed YouTube Videos in HTML?
How to set a Video as
Your HTML Background?
How to add video in HTML from a folder?
How to customise Video Controls in HTML?
1) How to Add a Video in HTML?
Adding a video to your web page is simple and
straightforward using the <video> tag. This HTML element allows you to
embed video files directly, offering several customization options like
playback controls, autoplay, and looping.
Step-by-Step Guide to Adding a Video
Basic Syntax:
The <video> tag is used to add videos to your webpage.
Inside the <video> tag, you include one or more <source> tags that
specify the video file(s). Here's an example:
<video width="600" controls>
<source src="example.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
Explanation of the Code:
- <video>
Tag:
The parent element that defines the video player. It includes optional attributes to customize how the video behaves. - <source>
Tag:
This specifies the video file and its format. You can include multiple <source> tags for different file formats to ensure compatibility across browsers. - Fallback
Text:
The text inside the <video> tag ("Your browser does not support the video tag") is shown if the browser doesn't support HTML5 video.
Key Attributes of the <video> Tag
To make your video more interactive and user-friendly, you
can use the following attributes:
- controls:
Displays playback controls such as play, pause, volume, and fullscreen
options.
Example:
<video controls>
- autoplay:
Starts playing the video automatically when the page loads. Be mindful
when using this attribute, as autoplay videos can sometimes annoy users.
Example:
<video autoplay>
- loop:
Makes the video restart automatically when it finishes playing.
Example:
<video loop>
- muted:
Mutes the video by default. This is often used with autoplay to prevent
unwanted sound when the page loads.
Example:
<video muted>
- width
and height: Set the size of the video player in pixels.
Example:
<video width="600" height="400">
Complete Example with All Attributes:
Here’s how a full implementation might look:
<video width="600" height="400" controls autoplay loop muted>
<source src="example.mp4" type="video/mp4">
<source src="example.ogg" type="video/ogg">
Your browser does not support the video tag.
</video>
Notes for Better Compatibility:
- Include
multiple formats like MP4, WebM, and Ogg for cross-browser support.
- Test
your video on different devices and browsers to ensure it works
everywhere.
- Optimize video file sizes for faster loading times.
2) How to Embed YouTube Videos in HTML?
Adding YouTube videos to your website is an excellent way to
enrich your content without the need to host large video files yourself. By
using the <iframe> tag, you can seamlessly integrate YouTube videos into
your webpage.
Step-by-Step Guide to Embedding a YouTube Video
Basic Syntax:
The <iframe> tag is used to embed external content
like YouTube videos. Here’s an example:
<iframe
width="560"
height="315"
src="https://www.youtube.com/embed/VIDEO_ID"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen>
</iframe>
Explanation of the Code
- <iframe>
Tag:
This creates an inline frame that displays external content, in this case, a YouTube video. - Attributes:
- width
and height: Set the size of the embedded video player in pixels.
- src:
The URL of the YouTube video, formatted as
https://www.youtube.com/embed/VIDEO_ID. Replace VIDEO_ID with the unique
identifier of the video.
- title:
Provides a title for the iframe, improving accessibility.
- frameborder:
Sets the border width for the iframe. A value of 0 removes the border.
- allow:
Specifies permissions such as autoplay and fullscreen.
- allowfullscreen:
Allows the video to be played in fullscreen mode.
Tips for Customizing Your Embedded Video
- Replace
VIDEO_ID:
Find the unique ID of your YouTube video in its URL. For example, in https://www.youtube.com/watch?v=dQw4w9WgXcQ, the VIDEO_ID is dQw4w9WgXcQ. - Enable
Autoplay:
Add ?autoplay=1 to the video URL to make the video start automatically when the page loads.
Example:
src="https://www.youtube.com/embed/VIDEO_ID?autoplay=1"
- Mute
the Video:
To mute the video by default, add &mute=1 to the URL. This is particularly useful when using autoplay to prevent unwanted sound.
Example:
src="https://www.youtube.com/embed/VIDEO_ID?autoplay=1&mute=1"
- Control
Playback Features:
You can allow or restrict features such as accelerometer, clipboard-write, or picture-in-picture by modifying the allow attribute.
Complete Example with Customizations
Here’s an example of an embedded YouTube video with autoplay
and mute enabled:
<iframe
width="560"
height="315"
src="https://www.youtube.com/embed/dQw4w9WgXcQ?autoplay=1&mute=1"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen>
</iframe>
Best Practices for Embedding YouTube Videos
- Responsive
Design:
Use CSS to make your video player responsive, ensuring it fits well on all screen sizes. - Optimize
for Performance:
Embedding multiple videos can slow down your page. Use a placeholder image with a play button for better performance, loading the video only when clicked. - Test
Across Browsers:
Check your embedded video on various browsers to ensure compatibility.
By embedding YouTube videos using the <iframe> tag,
you can enhance your website’s user experience while keeping your page
lightweight and fast-loading.
3) How to set a Video as Your HTML Background?
Background videos are an excellent way to make your website
visually dynamic and immersive. By carefully combining HTML and CSS, you can
create stunning effects that capture users’ attention while keeping your
content accessible.
How to Add a Background Video
Basic Structure:
To set a video as your website background:
- Use
a <div> container for your background video.
- Place
the <video> tag inside the container.
- Add
overlay content (like text or buttons) if needed.
Here’s a basic example:
<div class="video-background">
<video autoplay muted loop>
<source src="background.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
<div class="overlay-text">Welcome to Our Website</div>
</div>
Styling with CSS
CSS is essential for positioning your background video and
overlay content.
.video-background video {
position: fixed; /* Ensures the video stays fixed in the background */
top: 0;
left: 0;
width: 100%; /* Covers the entire width of the viewport */
height: 100%; /* Covers the entire height of the viewport */
object-fit: cover; /* Ensures the video scales without distortion */
z-index: -1; /* Pushes the video behind other content */
}
.overlay-text {
position: absolute;
top: 50%; /* Centers the text vertically */
left: 50%; /* Centers the text horizontally */
transform: translate(-50%, -50%); /* Ensures perfect centering */
color: white; /* Makes the text stand out */
font-size: 2rem; /* Adjusts the text size */
text-shadow: 2px 2px 5px black; /* Adds a subtle shadow for better readability */
}
Key Points to Remember
- Use
autoplay, muted, and loop:
- autoplay:
Automatically starts the video.
- muted:
Ensures the video doesn’t disrupt users with sound.
- loop:
Restarts the video automatically when it finishes.
- Overlay
Content:
Add elements like headings, buttons, or images inside the container for interactive features.
4) How to add video in HTML from a folder?
Hosting videos locally is a straightforward way to embed
multimedia on your website. By keeping video files in your project folder, you
gain full control over playback and avoid relying on third-party platforms.
Here's how to do it:
Steps to Add Local Videos
- Save
the Video File
- Place
your video file in a folder within your project. For example, create a
folder named videos and save the file as my-video.mp4.
- Use
the <video> Tag
- The
<video> tag in HTML allows you to embed the video in your web page.
- Add
a <source> Tag
- Use
the <source> tag to specify the video file's path and type.
Example Code
<video width="800" controls>
<source src="videos/my-video.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
Key Points to Remember
- File
Path Must Be Correct
- Ensure
the src attribute matches the location of your video file relative to
your HTML file. For example:
- If
the video is in a folder named videos, use
src="videos/my-video.mp4".
- If
the video is in the same folder as your HTML file, simply use
src="my-video.mp4".
- Use
controls for Playback
- The
controls attribute adds playback options like play, pause, and volume
adjustment.
- Fallback
Message
- Include
a fallback message for browsers that don’t support the <video> tag:
- Example:
"Your browser does not support the video tag."
.
5) How to customise Video Controls in HTML?
If you're looking to enhance user interaction by creating
custom video controls, you're on the right track! While the basic example below
demonstrates the concept, I’ve covered this topic in greater detail, including
advanced features and tips, on my dedicated post. Be sure to check it out for a
more comprehensive guide.
Visit how to customise controls for a complete
guide to creating video controls!
Example Code:
<div class="custom-video-player">
<video id="myVideo" width="600">
<source src="example.mp4" type="video/mp4">
</video>
<button onclick="playPause()">Play/Pause</button>
<button onclick="muteVideo()">Mute/Unmute</button>
</div>
JavaScript for Custom Controls:
const video = document.getElementById('myVideo');
function playPause() {
if (video.paused) {
video.play();
} else {
video.pause();
}
}
function muteVideo() {
video.muted = !video.muted;
}
Conclusion
Adding videos to your HTML projects is not only straightforward
but also a powerful way to enrich your website. From simple <video> tags
to immersive background videos and custom controls, the possibilities are
endless. Implement these techniques to create engaging and visually appealing
websites that captivate your audience.