Archiv

CSS Grid: Tricksen mit verschachtelten Grids

Eine Besonderheit bei Grid ist, dass man damit immer nur die direkten Kindelemente anordnen kann – nicht die Kindeskinder oder andere Nachfahren. Aber es gibt einen schönen Trick, wie man in einem Speziallfall doch scheinbar die Unterelemente mitanordnen kann und ein verschachteltes Grid für „ein Raster“ nutzen kann.

Weiterlesen

display: contents bei Gridlayout & Flexbox

Eines haben Gridlayout und Flexbox gemeinsam: Wenn man die Grid/Flexbox-Darstellung aktiviert, so lassen sich dann nur die echten Kindelemente anordnen, aber keine weiteren Nachkommen. Das diktiert einem aber auch eine entsprechende Struktur und manchmal passt es nicht … Abhilfe bietet die Eigenschaft display: contents.

Weiterlesen

Layouten mit Gridlayout und mit Flexbox im Vergleich

Lange Zeit hatten wir keine vernünftige Layouttechnik – und jetzt haben wir gleich zwei: Flexbox und Gridlayout. Gridlayout ist mächtiger, das ist klar. Brauchen wir damit überhaupt noch Flexbox? Diese Frage beantwortet man am besten an praktischen Beispielen – hier zeige ich ein Sticky-Footer-Layout, das dann erweitert wird, und führe vor, wie man das Layout in seinen Variationen jeweils mit Gridlayout und mit Flexbox umsetzt. Weiterlesen

justify-content: space-evenly bei Flexbox und Gridlayout

Durch justify-content: space-around wird bei Flexbox und Gridlayout der Leerraum zwischen den Items und am Anfang und Ende ergänzt. Zwischen den Items ist der Leerraum jedoch doppelt so groß wie am Anfang und am Ende. Manchmal hätte man es aber auch alle Abstände gleich – also space-evenly. Das funktioniert bei Gridlayout, für Flexbox ist es vorgesehen, funktioniert aber noch nicht in allen Flexbox-Browsern. Aber man das gewünschte Verhalten durch etwas Trickserei erreichen …

Weiterlesen

Flexbox vs Gridlayout: einfache Navigation mit unbekannter Anzahl an Punkten

Für einfache Layoutanordnungen ist Flexbox das Mittel der Wahl, das ist klar. Trotzdem hat mich interessiert, wie man folgenden Fall mit Gridlayout löst – eine horizontale Navigation mit unbekannter Anzahl an Navigationspunkten, wobei der Platz aber bestmöglich ausgenutzt wird. Im Vergleich dazu zeige ich auch die Lösung mit Flexbox.

Weiterlesen

Zentrieren mit Gridlayout

Natürlich ist das CSS3-Gridlayout-Modul für komplexe Layoutaufteilungen gedacht, aber manchmal braucht man ja auch banale Dinge – wie beispielsweise eine horizontale und vertikale Zentrierung. Und da das Gridlayout demnächst standardmäßig in Firefox (ab Version 52), Chrome (ab Version 57) und Safari (ab 10.1) unterstützt wird, scheint es mir der richtige Zeitpunkt, die verschiedenen Optionen auszuprobieren. Zur Wahl stehen für die Zentrierung die Angaben align-content, justify-content sowie align-items und justify-items. Was aber ist genau der Unterschied zwischen diesen Angaben? Und wie zentriert man jetzt am besten beim Einsatz vom CSS3-Gridlayout?

Weiterlesen

Flexbox – Verwirrendes bei der flex-Kurzschreibweise

Die Kurzschreibweise flex bestimmt die flexiblen Ausmaße von Flexboxen und ist eine verkürzte Schreibweise für drei Angaben. Soweit so klar. Was aber weniger bekannt ist: Wenn man bei flex die Angabe für flew-grow oder  flex-basis weglässt, werden andere Werte genommen als die Ausgangswerte der beiden Eigenschaften. Das ist ungewöhnlich. Aber noch mal ganz von vorne.

Weiterlesen

Flexbox: Elemente intelligent ausblenden mit visibility: collapse

Bei Flexbox passen sich die Elemente aneinander an – aber was ist, wenn Elemente temporär ausgeblendet werden … und die umgebenden Elemente sich trotzdem daran anpassen sollen? In diesem Fall hilft visibility: collapse.

Weiterlesen

Flexbox: Zentrieren per margin und per justify-content/align-items

Bei der Verwendung von Flexbox gibt es bekanntlicherweise zwei Arten, Elemente zu zentrieren. Man kann margin beim zu zentrierenden Element einsetzen oder mit justify-content/align-items hantieren. Bisher dachte ich, dass beide sich nur in der Browserunterstützung unterscheiden, aber es gibt einen anderen wesentlichen Unterschied zwischen beiden – der sich zeigt, wenn der Viewport kleiner ist als das zu zentrierende Element.

Weiterlesen