CSS Grid vertical center
This is vertically and horizontally centered.
HTML
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CSS Grids - vertical centering</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
</head>
<body>
<header>
<img src="https://dummyimage.com/1400x150" alt="banner placeholder">
<nav>
<a href="#">HOME</a> | <a href="#">CONTACT</a> | <a href="#">ABOUT</a> | <a href="#">OTHER</a>
</nav>
</header>
<main>
<h3>Welcome to CSS Grids!</h3>
<p>I'm responsive on all screen sizes.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Consectetur nostrum similique, dolores enim quam provident, deserunt tempora molestias. Nisi laboriosam quam dolor, officia magni error? Sint nihil dolore debitis doloremque</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Consectetur nostrum similique, dolores enim quam provident, deserunt tempora molestias. Nisi laboriosam quam dolor, officia magni error? Sint nihil dolore debitis doloremque</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Consectetur nostrum similique, dolores enim quam provident, deserunt tempora molestias. Nisi laboriosam quam dolor, officia magni error? Sint nihil dolore debitis doloremque</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Consectetur nostrum similique, dolores enim quam provident, deserunt tempora molestias. Nisi laboriosam quam dolor, officia magni error? Sint nihil dolore debitis doloremque</p>
</main>
<footer>
<small>© 2023 XZYZ website, all rights reserved.</small>
</footer>
</body>
</html>
CSS
body, html {
margin: 0;
height: 100%;
display: grid;
color: white;
text-align: center;
background: #333 url(https://picsum.photos/1200/900/) no-repeat center center;
background-size: cover;
}
header {
background-color: rgba(1, 1, 1, 0.8);
height: 100%;
}
header img {
width: 100%;
}
nav a {
text-decoration: none;
color: goldenrod;
font-weight: bold;
}
nav a:hover,
nav a:active,
nav a:focus {
color: antiquewhite;
}
main {
padding: 2%;
max-width: 80%;
margin: auto;
background-color: rgba(255, 255, 255, 0.6);
color: #222;
}