Beispiel:CSS-grid-layout-4-benannte-Linien.html
Aus SELFHTML-Wiki
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Holy Grid Layout</title>
<style>
body {
display: grid;
gap: 0.5em;
}
@media (min-width: 45em) {
body{
display: grid;
grid-template-columns: 1fr [nav-start] fit-content(12em) [main-start] minmax(20em, 1fr) [main-end] fit-content(15em) [aside-end] 1fr;
grid-template-rows: [head-start] min-content
[main-start] 1fr
[main-end] min-content
[foot-end];
}
header, footer {
grid-column: nav-start / aside-end;
}
nav {
grid-column: nav-start / main-start;
}
main {
grid-column: main-start / main-end;
grid-row: main-start / main-end;
}
}
header, nav, main, article, section, aside, footer {
border-radius: 0px 0.5em 0.5em;
border: thin solid;
padding: 10px;
}
header {
background: #F1F3F4;
border-color: #d5d5d5;
display:grid;
grid-template-columns: min-content 1fr;
}
nav {
background: #fffbf0;
border-color: #e7c157;
}
main {
background: #ffede0;
border-color: #df6c20;
}
aside {
background: #ebf5d7;
border-color: #8db243;
}
footer {
background: #e4ebf2;
border-color: #8a9da8;
}
footer * {
float: right;
clear: right;
margin: 0 0 1em;
}
body {
font-family: sans-serif;
}
</style>
</head>
<body>
<header>
<img src="/images/a/ad/Selfhtml-beispiel_150.svg" alt="logo">
<h1>Holy-Grail-Layout mit Grid</h1>
</header>
<nav>
<h2>Navigation</h2>
<ul>
<li><a href="#">Startseite</a></li>
<li><a href="#">Unterseite 1</a></li>
<li><a href="#">Unterseite 2</a></li>
<li><a href="#">Kontakt</a></li>
</ul>
</nav>
<main>
<h2>CSS-basierte Grid Layouts</h2>
<p>Grid Layout ist wie Flexbox eine sehr moderne und einfache Möglichkeit, responsive und flexible Layouts zu erstellen, ohne feste Größenangaben und weitere CSS-Einstellungen wie position, float oder clear nutzen zu müssen.
</p>
<p>Dabei können Elemente beliebig innerhalb eines Rasters platziert werden, wenn gewünscht, auch übereinander.
</p>
<p>Grid Layout wird in allen modernen Browsern unterstützt.</p>
</main>
<aside id="news">
<h2>Top-News</h2>
<p>Gestern gab's Freibier!</p>
</aside>
<footer>
<a href="#kontakt.html">Kontakt</a>
<p>© 2021 SELFHTML</p>
</footer>
</body>
</html>