Top Banner
Можно вообще всё. Раскладка по гриду M. C. Escher, Relativity
73

Вадим Макеев

Apr 16, 2017

Download

Software

CodeFest
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Вадим Макеев

Можно вообще всё.Раскладка по гриду

M. C

. Esc

her,

Rela

tivity

Page 2: Вадим Макеев

2

Page 3: Вадим Макеев
Page 6: Вадим Макеев

6

Page 7: Вадим Макеев
Page 8: Вадим Макеев
Page 9: Вадим Макеев
Page 10: Вадим Макеев

Включаем— Opera: opera://flags/#enable-experimental-web-platform-features

— Chrome: chrome://flags/#enable-experimental-web-platform-features

— Firefox: about:config — layout.css.grid.enabled

10

Page 11: Вадим Макеев

Гриды11

Page 12: Вадим Макеев

Контейнер

Page 13: Вадим Макеев

Линия

13

Page 14: Вадим Макеев
Page 15: Вадим Макеев

Полоса

15

Page 16: Вадим Макеев
Page 17: Вадим Макеев
Page 18: Вадим Макеев

Ячейка

18

Page 19: Вадим Макеев
Page 20: Вадим Макеев

Область

20

Page 21: Вадим Макеев
Page 22: Вадим Макеев

Термины— grid container — грид-контейнер

— grid item — грид-элемент

— grid track — грид-полоса

— grid cell — грид-ячейка

— grid line — грид-линия

— grid area — грид-область

Подробнее в словаре терминов по фронтенду.

22

Page 23: Вадим Макеев

Автоматика

23

Page 24: Вадим Макеев

sample

sample__item

sample__item

sample__item

sample__item

sample__item

Заготовка<div class=" ">

<div class=" "></div>

<div class=" "></div>

<div class=" "></div>

<div class=" "></div>

<div class=" "></div>

</div>

01.

02.

03.

04.

05.

06.

07.

24

Page 25: Вадим Макеев

#0175A7

:first-child #090

:last-child #C00

::before counter(list)

Заготовка.sample { /* Пока пусто */ }

.sample__item {

background: ;

}

.sample__item { background: }

.sample__item { background: }

.sample__item { content: }

01.

02.

03.

04.

05.

06.

07.

25

Page 26: Вадим Макеев

1

2

Page 27: Вадим Макеев

display: grid;

.sample {

}

01.

02.

03.

27

Page 28: Вадим Макеев

1

2

Page 29: Вадим Макеев

Колонки

29

Page 30: Вадим Макеев

.sample

1fr 1fr

Пополам {

grid-template-columns: ;

}

01.

02.

03.

30

Page 31: Вадим Макеев

1 2

Page 32: Вадим Макеев

1 2

3

Page 33: Вадим Макеев

1 2

3 4

Page 34: Вадим Макеев

1 2

3 4

5

Page 35: Вадим Макеев

1 2

3 4

5 6

Page 36: Вадим Макеев

.sample

1fr 1fr 1fr

На три {

grid-template-columns: ;

}

01.

02.

03.

36

Page 37: Вадим Макеев

1 2 3

Page 38: Вадим Макеев

1fr ☛ 1 часть

38

Page 39: Вадим Макеев

фыр-фыр-фыр

39

Page 40: Вадим Макеев

.sample

1fr 2fr 3fr

Пропорционально {

grid-template-columns: ;

}

01.

02.

03.

40

Page 41: Вадим Макеев

1 2 3

Page 42: Вадим Макеев

.sample

250px 1fr 250px

Фикс и остальное {

grid-template-columns: ;

}

01.

02.

03.

42

Page 43: Вадим Макеев

1 2 3

Page 44: Вадим Макеев

Строки

44

Page 45: Вадим Макеев

.sample

columns 1fr

rows 1fr

Фикс и остальное {

grid-template- : 150px 150px;

grid-template- : 150px 150px;

}

01.

02.

03.

04.

45

Page 46: Вадим Макеев

1 2 3

4 5 6

7 8 9

Page 47: Вадим Макеев

Ручник

47

Page 48: Вадим Макеев
Page 49: Вадим Макеев

.sample

1fr 1fr 1fr

Три колонки {

grid-template-columns: ;

}

01.

02.

03.

49

Page 50: Вадим Макеев

1 2 3

4 5

Page 51: Вадим Макеев

.sample

1 / 4

.sample

1 / 4

Шапка и подвал :nth-child(1) {

grid-column: ;

}

:nth-child(5) {

grid-column: ;

}

01.

02.

03.

04.

05.

06.

51

Page 52: Вадим Макеев

1

2 3 4

5

Page 53: Вадим Макеев

.sample

3 / 4

.sample

1 / 2

Подвал и шапка :nth-child(1) {

grid-row: ;

}

:nth-child(5) {

grid-row: ;

}

01.

02.

03.

04.

05.

06.

53

Page 54: Вадим Макеев

.sample

3 / 1 / 4 / 4

.sample

1 / 1 / 2 / 4

Подвал и шапка :nth-child(1) {

grid-area: ;

}

:nth-child(5) {

grid-area: ;

}

01.

02.

03.

04.

05.

06.

54

Page 55: Вадим Макеев

1

2 3 4

5

Page 56: Вадим Макеев

ASCII

Авто

порт

рет!

56

Page 57: Вадим Макеев

1

2

3

4

5

Page 58: Вадим Макеев

.sample

'a a a a'

c c

'e e e e'

ASCII {

grid-template-areas:

'b d' /* Шаблон области */

;

}

01.

02.

03.

04.

05.

06.

58

Page 59: Вадим Макеев

1 a

2 b

3 c

4 d

5 e

A B C D E.sample :nth-child() { grid-area: }

.sample :nth-child() { grid-area: }

.sample :nth-child() { grid-area: }

.sample :nth-child() { grid-area: }

.sample :nth-child() { grid-area: }

01.

02.

03.

04.

05.

59

Page 60: Вадим Макеев

1

2 3 4

5

Page 61: Вадим Макеев

1 b

2 a

3 e

4 c

5 d

B A E C D.sample :nth-child() { grid-area: }

.sample :nth-child() { grid-area: }

.sample :nth-child() { grid-area: }

.sample :nth-child() { grid-area: }

.sample :nth-child() { grid-area: }

01.

02.

03.

04.

05.

61

Page 62: Вадим Макеев

1

2

3

4

5

Page 63: Вадим Макеев

.sample

'b c c d'

ASCII {

grid-template-areas:

'a a a a'

'e e e e';

}

01.

02.

03.

04.

05.

06.

63

Page 64: Вадим Макеев

.sample

'b c c d'

'b c c d'

ASCII {

grid-template-areas:

'a a a a'

'e e e e';

}

01.

02.

03.

04.

05.

06.

07.

64

Page 65: Вадим Макеев

1

2 3 4

5

Page 66: Вадим Макеев

1

2 3 4

5

Page 67: Вадим Макеев

.sample {

grid-template-areas:

'� � � �'

'� � � �'

'� � � �';

}

01.

02.

03.

04.

05.

06.

67

Page 68: Вадим Макеев

Так флексы или гриды?Внешние гриды для общей раскладки, смесь вложенных флексов и гридов для

компонентов страницы и блочные, инлайновые или табличные элементы,

там, где находится текстовое содержимое.

Таб Аткинс, www-style

“68

Page 69: Вадим Макеев

Ещё? Ещё!— Переводы CSS Live

— Grid by Example

— CSS Grid Layout Examples

— A Complete Guide to Grid

— CSS Grid Polyfill

69

Page 70: Вадим Макеев

sokr.me/grl

70

Page 71: Вадим Макеев

@pepelsbey

71

Page 72: Вадим Макеев

Shower

72

Page 73: Вадим Макеев

Вопросы?

73