WBA
Bc. Matěj Cajthaml — SSPŠ
©
transform
transform
transform
moderní tabulky
Flexbox se nehodí na vícedimenzionální rozložení.
Flexbox je navržen na jednu dimenzi a flex-wrap
způsobuje chaos.
Grid oproti flexboxu umí pracovat ve dvou dimenzích (řádcích a sloupích) perfektně.
Flexbox a grid umí spolu velmi dobře spolupracovat.
Grid je komplikovanější než flexbox a hodí se na méně věcí.
Proto si ukážeme pouze nutné základy.
Hlavní krása gridu je to, že můžeme pomocí CSS měnit polohu jednotlivých položek v gridu.
Grid zapneme pomocí display: grid;
Každý řádek a sloupec má přesně stanovenou šířku (resp. výšku).
Buď automaticky nebo pomocí vlastnosti grid-template-columns
(resp.
grid-template-rows
).
Na mezery mezi sloupci a řádky můžeme použít vlastnost gap
.
Samozřejmě i row-gap
i column-gap
.
Co se stane, když bude více prvků, než je předefinováno?
A co se stane, když bude více prvků, než je předefinováno a nastavím pouze řádky nebo sloupce?
auto
fr
grid-template-columns: 4fr 1fr 2fr
fr
align-items
justify-items
: nyní má i hodnotu stretch
a další
Zjistěte, co dělají vlastnosti justify-content
a align-content
na
gridu.
repeat
repeat(3, 1fr)
/ repeat(6, 40px)
30px repeat(2, 1fr) 30px repeat(2, auto)
minmax
minmax(40px, auto)
/ minmax(40px, 100px)
repeat(4, minmax(40px, 100px))
colspan
a rowspan
grid-row-start
& grid-row-end
grid-column-start
& grid-column-end
grid-row
& grid-column