JSFiddle - React, Tailwind, and code Playground

by Rolf

HTML

<nav>
  <details>
  <summary>☰</summary>
    <ul>
    <li><a href="/">Startseite (Home)></a></li>
      <li><a href="#">Seite 1></a>
      <li><a href="#">Seite 2></a>
      <li><a href="#">Seite 3></a>
     </ul>
  </details>
</nav>
<header>
<p>x</p>
<p>text1</p>
<p>img</p>
<p>text2</p>
</header>
<main>     
<article>
<h1>Seitentitel</h1>
<p> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. </p>
</article>

</main>

CSS

body {
  display: grid;
  grid-template: "nav header rest" auto
                 "main main rest" auto
                 / 2em 1fr 20%;
  grid-gap: 1em;
}

nav { grid-area: nav; }
header {
  grid-area: header;
  display: grid; 
  grid-template-columns: 2em 1fr auto 1fr;
  gap: 1em;
}
main { grid-area: main; }

nav, header, main { border: 1px solid red; }

header p {
  font-size: 2em;
  margin: 0;
  text-align: center;
}
header p:nth-of-type(1) { text-align: left; }
header p:nth-of-type(2) { text-align: right; }
header p:nth-of-type(4) { text-align: left; }
nav {
  position: relative;
}
nav summary { display: none; }

/* Schließt den Internet Explorer aus */
@supports (width: max-content) {
  nav summary {
    font:  1.2em sans-serif;
    cursor: pointer;
    padding: 0 0.2em 0 0;
    user-select: none;
    display: block;    /* Für first-letter, und unterdrückt den Marker */

  }
  nav summary::first-letter {
    font-weight: 900;
    text-shadow: 0 -1px;
    padding: 0 0.2em;
    border-radius: 0.2em;
    background-color: #6c6;
  }
  nav ul {
    position: absolute;
  }
}

nav ul {
  list-style: none;
  border: 1px solid black;
  border-radius: 0.5em;
  padding: 0.5em;
  background-color: white;
  width: max-content;
}

nav li {
   padding: 0.1em 0.5em;
}
nav li.newGroup {
  margin-top: 0.3em;
  padding-top: 0.3em;
  border-top: 1px solid black;
}

main {
/*  display: grid;
  grid-template-columns: 80% 1fr; */
}