Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

Dilatação do tempo

Slide 3

Slide 3 text

Mother, WWcode Leader and studying for become a Front-End Developer and CSS Evangelist <3 I love running and ride a bike! Simone Amorim @samorim02 @simoneas02 simoneas02.github.io https://www.womenwhocode.com/ https://csshortcut.github.io/front-end-na-pratica.html https://willianjusten.com.br/js-com-tdd-na-pratica-e-novidades/

Slide 4

Slide 4 text

CSS Layouts ontem? O que fez a cabeça da moçada <3 .box { display: inline-block; } .box { float: left; } .container { display: flex; }

Slide 5

Slide 5 text

Grid Layout?

Slide 6

Slide 6 text

NO Biblioteca / framework? CSS Grid Layout Bootstrap, etc…

Slide 7

Slide 7 text

Um modulo CSS3 que define um grid otimizado para interfaces CSS Grid Layout CSS Grid Layout Module Level 1 w3.org/TR/css3-grid-layout/

Slide 8

Slide 8 text

FlexBox? Layouts unidimensionais w3.org/TR/css-flexbox-1/

Slide 9

Slide 9 text

Grid Layout? w3.org/TR/css3-grid-layout/ Layouts bidimensionais

Slide 10

Slide 10 text

Terminologia

Slide 11

Slide 11 text

Grid Lines As linhas que dividem o grid.

Slide 12

Slide 12 text

Grid Track É o termo genérico para o espaço entre duas grid lines, verticais ou horizontais.

Slide 13

Slide 13 text

Grid Cells Também conhecida como grid item. É o espaçamento entre duas line grids verticais e duas horizontais.

Slide 14

Slide 14 text

Grid Area Um ou mais grid items (grid cells)

Slide 15

Slide 15 text

Manda code

Slide 16

Slide 16 text

HTML básico
A
B
F
E
D
C

Slide 17

Slide 17 text

Definindo um Grid

Slide 18

Slide 18 text

. grid-container { } . grid-container { } display: grid; display: inline-grid;

Slide 19

Slide 19 text

Line-base placement

Slide 20

Slide 20 text

.grid-container { display: grid; } grid-template-rows: 100px 100px; grid-template-columns: 120px 120px 120px; A B C D E F 1 column 2 column 3 column 2 row 1 row 3 row 100px;

Slide 21

Slide 21 text

Line-base positioning

Slide 22

Slide 22 text

.a { } grid-column-start: 1; grid-column-end: 2; grid-row-start: 1; grid-row-end: 2; .f { } grid-column-start: 3; grid-column-end: 4; grid-row-start: 2; grid-row-end: 3; B C D A E F

Slide 23

Slide 23 text

Line-base positioning Shorthands

Slide 24

Slide 24 text

.a { } grid-column: 1 / 2; grid-row: 1 / 2; .a { } grid-column-start: 1; grid-column-end: 2; grid-row-start: 1; grid-row-end: 2; .a { } grid-area: 1 / 1 / 2 / 2; B C D A E F

Slide 25

Slide 25 text

Grid Gap

Slide 26

Slide 26 text

… … grid-row-gap: 10px; grid-column-gap: 10px; … … grid-gap: 10px;

Slide 27

Slide 27 text

Area naming

Slide 28

Slide 28 text

.a {grid-area: header;} .b {grid-area: aside;} .c {grid-area: main;} .d {grid-area: content;} .grid-container { display: grid; grid-template-rows: auto; grid-template-columns: auto; grid-template-areas: “header header header” “aside main main” “aside content content” “footer footer footer”; } main header content aside footer .e {grid-area: footer;}

Slide 29

Slide 29 text

Responsive Web Design

Slide 30

Slide 30 text

main header content aside footer @media (max-width: 666px) { } … grid-template-areas: “header header header” “aside main main” “aside content content” “footer footer footer”; … .grid-container { grid-template-areas: “aside header header” “aside main main” “aside main main” “content footer footer”; } main header content aside footer

Slide 31

Slide 31 text

Live Coding http://codepen.io/simoneas02/pen/rmBBed

Slide 32

Slide 32 text

Muito, tipo muito Mais

Slide 33

Slide 33 text

Parcial / prefixo -ms Suportado caniuse.com/#feat=css-grid Qual o suporte?

Slide 34

Slide 34 text

Quer Saber mais? A curated list of CSS Grid Layout Module or only Css Grid https://github.com/simoneas02/awesome-grid-layout

Slide 35

Slide 35 text

bit.ly/aprendendo-grid-layout

Slide 36

Slide 36 text

Obrigada! @samorim02 @simoneas02 simoneas02.github.io