Grid mit Tailwind CSS und 1fr?

1 Antwort

Vom Beitragsersteller als hilfreich ausgezeichnet

Innerhalb einer Flexbox kannst du das footer-Element mit einem Auto Margin herunterdrücken (lies dazu hier).

Plain-CSS-Lösung:

.container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.container > footer {
  margin-top: auto;
}

Abgeleitet auf Tailwind:

<div class="flex flex-col min-h-screen">
  <header>Header</header>
  <main>Main content</main>
  <footer class="mt-auto">Footer</footer>
</div>

Babelfish 
Beitragsersteller
 16.09.2023, 19:03

Danke aber ich brauche das für CSS Grid und nicht für Flexbox. Das Layout wird insgesamt schon noch komplizierter und die notwendigen Anpassungen für verschiedene Größen lassen sich mit CSS Grid deutlich besser realisieren.

regex9  16.09.2023, 19:33
@Babelfish

Bei einem Grid kannst du die Zeilenhöhe so setzen:

<div class="grid grid-rows-[5rem,1fr,2rem] min-h-screen">

Der Auto Margin wird dann nicht mehr benötigt (im Grid würde er innerhalb des Grid Tracks wirken).

Babelfish 
Beitragsersteller
 16.09.2023, 20:06
@regex9

Danke! grid-rows-[5rem,1fr,2rem] war genau das, was ich suchte.