Betydelsen av auto-fit i CSS-grid

Låt oss nu titta på värdet auto-fit, som också används när man anger kolumner med samma storlek i kombination med funktionen repeat. Dess skillnad från värdet auto-fill är att auto-fit anpassar antalet kolumner efter den tillgängliga bredden på containern, genom att utvidga eller komprimera dem.

Exempel

Låt oss titta på hur värdet auto-fit fungerar med ett exempel på en container med åtta element. Vi tillämpar tillsammans med värdet auto-fit den funktion minmax som du känner till från föregående lektion:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
  <div>6</div>
  <div>7</div>
  <div>8</div>
</div>
css#parent {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  border: 2px solid #696989;
  padding: 10px;
  width: 600px;
}
#parent > div {
  padding: 10px;
  border: 1px solid #696989;
}

Результат:

Exempel

Och nu minskar vi bredden på grid-containern till 400px:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
  <div>6</div>
  <div>7</div>
  <div>8</div>
</div>
css#parent {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  border: 2px solid #696989;
  padding: 10px;
  width: 400px;
}
#parent > div {
  padding: 10px;
  border: 1px solid #696989;
}

Результат:

Praktiska uppgifter

Задание 1

Anta att du har ett grid med nio element. Ställ in för dem med hjälp av värdet auto-fit en sådan kolumnbredd och bredd på grid-containern att alla underordnade element placeras i tre rader.

Задание 2

Och nu modifierar du den föregående uppgiften så att alla element placeras i två rader.