body {
margin: 0;
padding: 0;
}
#grid {
display: grid;
grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
gap: 10px;
width: 100vw;
height: 100vh;
}
@media (orientation: landscape) {
#location {
grid-area: 1 / 1 / 4 / 13;
background-color: rgba(40, 174, 181, 0.5);
}
#event1 {
grid-area: 4 / 1 / 13 / 4;
background-color: rgba(223, 210, 166, 0.5);
}
#breakfast {
grid-area: 4 / 4 / 13 / 5;
background-color: rgba(223, 239, 48, 0.5);
}
#event2 {
grid-area: 4 / 5 / 8 / 9;
background-color: rgba(203, 167, 85, 0.5);
}
#event3 {
grid-area: 4 / 9 / 8 / 13;
background-color: rgba(72, 210, 57, 0.5);
}
#break {
grid-area: 8 / 5 / 9 / 13;
background-color: rgba(95, 40, 159, 0.5);
}
#event4 {
grid-area: 9 / 5 / 13 / 9;
background-color: rgba(186, 150, 134, 0.5);
}
}
@media (orientation: portrait) {
#location {
grid-area: 1 / 1 / 13 / 4;
background-color: rgba(40, 174, 181, 0.5);
}
#event1 {
grid-area: 1 / 4 / 4 / 13;
background-color: rgba(223, 210, 166, 0.5);
}
#breakfast {
grid-area: 4 / 4 / 5 / 13;
background-color: rgba(223, 239, 48, 0.5);
}
#event2 {
grid-area: 5 / 4 / 9 / 8;
background-color: rgba(203, 167, 85, 0.5);
}
#event3 {
grid-area: 5 / 9 / 9 / 13;
background-color: rgba(72, 210, 57, 0.5);
}
#break {
grid-area: 5 / 8 / 13 / 9;
background-color: rgba(95, 40, 159, 0.5);
}
#event4 {
grid-area: 9 / 4 / 13 / 8;
background-color: rgba(186, 150, 134, 0.5);
}
}
<div id="grid">
<div id="location">location</div>
<div id="event1">event1</div>
<div id="breakfast">breakfast</div>
<div id="event2">event2</div>
<div id="event3">event3</div>
<div id="break">break</div>
<div id="event4">event4</div>
</div>