flex-grid example

by ShaCP

HTML

<html>

  <head></head>

  <body>
    <div id="container">
      <span class="header">Header</span>
      <span>Content 1</span><span>Content 2</span><span>Content 3</span>
    </div>
    <div id="container2">
      <span class="header">Header</span>
      <span>Content 1</span><span>Content 2</span><span style="background-color: red; background-color: blue;" >Content 3</span>
    </div>
  </body>

</html>

CSS

* {
  border: 1px solid;
  text-align: center;
  font-size: 2rem;
}

#container {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1em;
}

div {
  background-color: lightskyblue;
}

.header {
  width: 100%;
  grid-column: 1 / -1;
}

#container span:not(.header) {
  width: max-content;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: auto;
  padding: 0 1em;
}

#container2 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
}