Fondamentalmente non sono molto convinto sul fatto di gestire il layout con una griglia css preferisco ancora gestire le varie parti con i contenitori div, ti riporto un'idea molto spartana su come potresti gestire il menu anche se non sono molto convinto del modo operandi.
codice:
<!DOCTYPE html>
<html lang="it">
<head>
<meta charset="utf-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<title>stdiofrenz - il web a portata di mano</title>
<meta name="description" content="">
<meta name="author" content="Frenz">
<link
href='https://fonts.googleapis.com/css?family=Lato:400,300italic,300,100italic,100,400italic,700,700italic,900,900italic'
rel='stylesheet' type='text/css'>
<!--[if lt IE 9]>
<script src="//im.altervista.org/site_index/html5shiv.js"></script>
<![endif]-->
<style type="text/css">
html, body {
margin: 0;
padding: 0;
}
.box-container {
width: 100%;
height: 100vh;
display: grid;
grid-template-areas: "header menu"
"main menu"
"footer menu";
grid-template-rows: 300px auto 90px;
grid-template-columns: 100%;
grid-gap: 0;
column-gap: 0;
}
.head {
border-bottom: 1px solid black;
grid-area: header;
background-image: url("http://stdiofrenz.altervista.org/image/head.jpeg");
background-size: cover;
color: white;
}
.menu {
position: absolute;
height:100vh;
right: 15px;
width: 150px;
display: none;
grid-area: menu;
opacity: 1;
z-index: 100;
background-color: rgba(0,0,0, .5);
}
.corpo {
grid-area: main;
}
.foot {
grid-area: footer;
background-color: gray;
}
#button-menu {
position: relative;
top: -80px;
width: 20px;
height: 20px;
float: right;
}
#logo {
margin: auto;
width: 30%;
position: relative;
top: 20%;
right: 33%;
left: 33%;
}
#logs {
margin: auto;
position: relative;
top: 30%;
}
</style>
<script src="https://code.jquery.com/jquery-3.5.0.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#logo").hide();
$("#logo").fadeIn(2000); //logo che appare
$("#button-menu").click(function () {
$(".menu").toggle("slow");
});
});
</script>
</head>
<body class="box-container">
<div class="menu">
menuz
</div>
<div class="head">header
<div id="logs">
<img id="logo" src="http://stdiofrenz.altervista.org/image/log.png">
<img id="button-menu" src="http://stdiofrenz.altervista.org/image/menu.png">
</div>
</div>
<div class="corpo">body</div>
<div class="foot">footer</div>
</body>
</html>