Попробуйте это как стартовую структуру. Контейнер видео полностью соответствует формату 16: 9 с тегом <video>
и без него. Дайте мне знать, если это не то, что вы ожидали.
<div class="parentContainer">
<header class="searchBar">
<br>search<br><br>
</header>
<div class="rowContainer">
<main class="videoContainer">
<div class="video">
video 16:9
<!-- <video width="480" height="270" controls>
<source src="https://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4">
</video> -->
</div>
<div class="video-title">
Title of the video
</div>
</main>
<aside class="sidebarContainer">
<br>Sidebar<br><br>
</aside>
</div>
<footer class="bottomContainer">
<br>bottom<br><br>
</footer>
</div>
с css ширина и высота кода 100% (или 100vw и 100vh)
*, *::before, *::after {
box-sizing: border-box;
}
html, body {
height: 100%;
}
body {
margin: 0;
font: 400 1rem/1.5 sans-serif;
}
header, main, aside, footer {
display: block;
}
.parentContainer {
height: 100%;
overflow: hidden;
}
.rowContainer {
display: flex;
}
.sidebarContainer {
flex: 0 0 25%;
width: 25%;
}
.videoContainer {
flex: 0 0 75%;
width: 75%;
}
.video {
position: relative;
display: block;
width: 100%;
padding: 0;
overflow: hidden;
}
.video::before {
display: block;
content: "";
padding-top: 56.25%; /* 9:16 */
}
.video video {
position: absolute;
top: 0; bottom: 0; left: 0;
width: 100%;
height: 100%;
border: 0;
}
.parentContainer {background-color: lightgreen;}
.searchBar {background-color: yellow;}
.videoContainer {background-color: silver;}
.video-title {background-color: lightgrey;}
.sidebarContainer {background-color: pink;}