Join the AI Workshop and learn to build real-world apps with AI. A hands-on, practical program to level up your skills.
The problem with embedding YouTube videos is that the embed is an iframe, and iframes need a fixed height and width or they will look off.
And we need to keep the proportions, based on the video aspect ratio.
To display a YouTube video responsively, wrap it in a container div:
<div class="video-container">
<iframe src="https://www.youtube.com/embed/...." frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
Then add this CSS to your site:
.video-container {
overflow: hidden;
position: relative;
width:100%;
}
.video-container::after {
padding-top: 56.25%;
display: block;
content: '';
}
.video-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
See that magic number, 56.25%? That’s needed as a padding when the aspect ratio of a video is 16:9. (9 ÷ 16 = 56.25%).
If your video is 4:3 for example, set it to 75%.