TL; DR: Gibt es etwas Ähnliches table-layout: fixed
für CSS-Grids?
Ich habe versucht, einen Jahresansichtskalender mit einem großen 4x3-Raster für die Monate und darin verschachtelten 7x6-Raster für die Tage zu erstellen.
Der Kalender sollte die Seite füllen, damit der Jahresrastercontainer eine Breite und Höhe von jeweils 100% erhält.
.year-grid {
width: 100%;
height: 100%;
display: grid;
grid-template: repeat(3, 1fr) / repeat(4, 1fr);
}
.month-grid {
display: grid;
grid-template: repeat(6, 1fr) / repeat(7, 1fr);
}
Hier ist ein funktionierendes Beispiel: https://codepen.io/loilo/full/ryXLpO/
Der Einfachheit halber hat jeder Monat in diesem Stift 31 Tage und beginnt an einem Montag.
Ich habe auch eine lächerlich kleine Schriftgröße gewählt, um das Problem zu demonstrieren:
Rasterelemente (= Tageszellen) sind ziemlich komprimiert, da sich mehrere Hundert davon auf der Seite befinden. Und sobald die Beschriftungen der Tagesnummern zu groß werden (spielen Sie mit den Schaltflächen oben links mit der Schriftgröße im Stift), wird das Raster nur größer und überschreitet die Körpergröße der Seite.
Gibt es eine Möglichkeit, dieses Verhalten zu verhindern?
Ich habe mein Jahresraster anfangs als 100% breit und hoch deklariert, daher ist dies wahrscheinlich der Ausgangspunkt, aber ich konnte keine gitterbezogenen CSS-Eigenschaften finden, die diesen Anforderungen entsprochen hätten.
Haftungsausschluss: Mir ist bewusst, dass es ziemlich einfache Möglichkeiten gibt, diesen Kalender ohne Verwendung des CSS-Rasterlayouts zu gestalten. Bei dieser Frage geht es jedoch mehr um das Allgemeinwissen zum Thema als um die Lösung des konkreten Beispiels.