Вот как вы определяете свой основной контейнер сетки:
.middle {
display: grid;
grid-template-areas: 'item1 item1 item1 item1 item2';
}
Вы создали сетку из пяти столбцов.
Однако вы не указали ширину для этих столбцов. Другими словами, вы не определили никаких значений для grid-template-columns
.
В результате каждый столбец по умолчанию имеет ширину содержимого.
Поскольку столбец, о котором идет речь, имеет текстовое содержимое, в отличие от других столбцов, он шире.
Установить правило для одинаковой ширины. Добавьте это к своему коду:
.middle {
display: grid;
grid-template-areas: 'item1 item1 item1 item1 item2';
grid-template-columns: repeat(5, 1fr); /* new */
}
пересмотренный кодекс
.middle {
display: grid;
grid-template-areas: "item1 item1 item1 item1 item2";
grid-template-columns: repeat(5, 1fr); /* new */
grid-column-gap: 3vh;
position: absolute;
width: 100%;
top: 23.3333666667%;
height: 53.3332667%;
border-left: 3vh solid transparent;
border-right: 3vh solid transparent;
}
.vid_player {
display: grid;
background-color: green;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
grid-template-rows: 1fr;
grid-column-gap: 3vh;
left: 0%;
height: 100%;
width: 100%;
grid-area: item1;
}
.item {
background-color: white;
height: 100%;
width: 100%;
border-radius: 10px;
}
.container {
display: grid;
grid-template-columns: 1fr;
grid-template-rows: 1fr 1fr 1fr;
height: 100%;
width: 100%;
background-color: grey;
grid-area: item2;
}
#one {
background-color: aqua;
}
#two {
background-color: red;
}
#three {
background-color: yellow;
}
#title {
color: white;
font-family: arial;
font-size: 50px;
text-align: center;
}
#location {
color: white;
font-family: arial;
font-size: 30px;
text-align: center;
}
#date {
color: white;
font-family: arial;
font-size: 30px;
text-align: center;
}
html {
box-sizing: border-box;
}
*,
*:before,
*:after {
box-sizing: inherit;
}
*:focus {
outline: 0;
outline: none;
user-select: none;
}
* {
margin: 0;
padding: 0;
user-select: none;
}
body {
display: block;
overflow: hidden;
height: 100vh;
background-color: darkblue;
}
<div class="middle">
<div class="vid_player">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
<div class="container">
<div id="one">
<div id="title">This Text</div>
<div id="location">is making this 3 row div</div>
<div id="date">wider for some reason</div>
</div>
<div id="two"></div>
<div id="three"></div>
</div>
</div>