SlideShare une entreprise Scribd logo
1  sur  73
Télécharger pour lire hors ligne
Можно вообще всё.
Раскладка по гриду
M.C.Escher,Relativity
2
Template Layout
4
Grid Layout
5
6
Включаем
— Opera: opera://flags/#enable-experimental-web-platform-features
— Chrome: chrome://flags/#enable-experimental-web-platform-features
— Firefox: about:config — layout.css.grid.enabled
10
Гриды
11
Контейнер
Линия
13
Полоса
15
Ячейка
18
Область
20
Термины
— grid container — грид-контейнер
— grid item — грид-элемент
— grid track — грид-полоса
— grid cell — грид-ячейка
— grid line — грид-линия
— grid area — грид-область
Подробнее в словаре терминов по фронтенду.
22
Автоматика
23
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
#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
1
2
display: grid;
.sample {
}
01.
02.
03.
27
1
2
Колонки
29
.sample
1fr 1fr
Пополам
{
grid-template-columns: ;
}
01.
02.
03.
30
1 2
1 2
3
1 2
3 4
1 2
3 4
5
1 2
3 4
5 6
.sample
1fr 1fr 1fr
На три
{
grid-template-columns: ;
}
01.
02.
03.
36
1 2 3
1fr ☛ 1 часть
38
39
.sample
1fr 2fr 3fr
Пропорционально
{
grid-template-columns: ;
}
01.
02.
03.
40
1 2 3
.sample
250px 1fr 250px
Фикс и остальное
{
grid-template-columns: ;
}
01.
02.
03.
42
1 2 3
Строки
44
.sample
columns 1fr
rows 1fr
Фикс и остальное
{
grid-template- : 150px 150px;
grid-template- : 150px 150px;
}
01.
02.
03.
04.
45
1 2 3
4 5 6
7 8 9
Ручник
47
.sample
1fr 1fr 1fr
Три колонки
{
grid-template-columns: ;
}
01.
02.
03.
49
1 2 3
4 5
.sample
1 / 4
.sample
1 / 4
Шапка и подвал
:nth-child(1) {
grid-column: ;
}
:nth-child(5) {
grid-column: ;
}
01.
02.
03.
04.
05.
06.
51
1
2 3 4
5
.sample
3 / 4
.sample
1 / 2
Подвал и шапка
:nth-child(1) {
grid-row: ;
}
:nth-child(5) {
grid-row: ;
}
01.
02.
03.
04.
05.
06.
53
.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
1
2 3 4
5
ASCII
Автопортрет!
56
1
2
3
4
5
.sample
'a a a a'
c c
'e e e e'
ASCII
{
grid-template-areas:
'b d' /* Шаблон области */
;
}
01.
02.
03.
04.
05.
06.
58
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
1
2 3 4
5
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
1
2
3
4
5
.sample
'b c c d'
ASCII
{
grid-template-areas:
'a a a a'
'e e e e';
}
01.
02.
03.
04.
05.
06.
63
.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
1
2 3 4
5
1
2 3 4
5
.sample {
grid-template-areas:
' '
' '
' ';
}
01.
02.
03.
04.
05.
06.
67
Так флексы или гриды?
Внешние гриды для общей раскладки, смесь вложенных флексов и гридов для
компонентов страницы и блочные, инлайновые или табличные элементы,
там, где находится текстовое содержимое.
Таб Аткинс,www-style
“
68
Ещё? Ещё!
— Переводы CSS Live
— Grid by Example
— CSS Grid Layout Examples
— A Complete Guide to Grid
— CSS Grid Polyfill
69
sokr.me/grl
70
@pepelsbey
71
Shower
72
Вопросы?
73

Contenu connexe

Tendances

Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Platonov Sergey
 
Address Sanitizer или как сделать программы на c/с++ надежнее и безопаснее (К...
Address Sanitizer или как сделать программы на c/с++ надежнее и безопаснее (К...Address Sanitizer или как сделать программы на c/с++ надежнее и безопаснее (К...
Address Sanitizer или как сделать программы на c/с++ надежнее и безопаснее (К...
Ontico
 
разработка серверов и серверных приложений лекция №3
разработка серверов и серверных приложений лекция №3разработка серверов и серверных приложений лекция №3
разработка серверов и серверных приложений лекция №3
Eugeniy Tyumentcev
 
Основы и применение статического анализа кода при разработке лекция 1
Основы и применение статического анализа кода при разработке лекция 1Основы и применение статического анализа кода при разработке лекция 1
Основы и применение статического анализа кода при разработке лекция 1
m2rus
 

Tendances (20)

Евгений Крутько — Опыт внедрения технологий параллельных вычислений для повыш...
Евгений Крутько — Опыт внедрения технологий параллельных вычислений для повыш...Евгений Крутько — Опыт внедрения технологий параллельных вычислений для повыш...
Евгений Крутько — Опыт внедрения технологий параллельных вычислений для повыш...
 
JSQuest d:)
JSQuest   d:)JSQuest   d:)
JSQuest d:)
 
Григорий Демченко, Асинхронность и неблокирующая синхронизация
Григорий Демченко, Асинхронность и неблокирующая синхронизацияГригорий Демченко, Асинхронность и неблокирующая синхронизация
Григорий Демченко, Асинхронность и неблокирующая синхронизация
 
C++ в играх, больших и не очень
C++ в играх, больших и не оченьC++ в играх, больших и не очень
C++ в играх, больших и не очень
 
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
 
MxxRu::externals: Repositoryless Dependency Manager
MxxRu::externals: Repositoryless Dependency ManagerMxxRu::externals: Repositoryless Dependency Manager
MxxRu::externals: Repositoryless Dependency Manager
 
Address Sanitizer или как сделать программы на c/с++ надежнее и безопаснее (К...
Address Sanitizer или как сделать программы на c/с++ надежнее и безопаснее (К...Address Sanitizer или как сделать программы на c/с++ надежнее и безопаснее (К...
Address Sanitizer или как сделать программы на c/с++ надежнее и безопаснее (К...
 
ПВТ - осень 2014 - Лекция 7. Многопоточное программирование без блокировок. М...
ПВТ - осень 2014 - Лекция 7. Многопоточное программирование без блокировок. М...ПВТ - осень 2014 - Лекция 7. Многопоточное программирование без блокировок. М...
ПВТ - осень 2014 - Лекция 7. Многопоточное программирование без блокировок. М...
 
Михаил Белопухов: OpenBSD: Куда катится крипто?
Михаил Белопухов: OpenBSD: Куда катится крипто?Михаил Белопухов: OpenBSD: Куда катится крипто?
Михаил Белопухов: OpenBSD: Куда катится крипто?
 
Asynchrony and coroutines
Asynchrony and coroutinesAsynchrony and coroutines
Asynchrony and coroutines
 
SECON'2016. Кочков Антон, Рютин Борис, Radare2 - от A до Z
SECON'2016. Кочков Антон, Рютин Борис, Radare2 - от A до ZSECON'2016. Кочков Антон, Рютин Борис, Radare2 - от A до Z
SECON'2016. Кочков Антон, Рютин Борис, Radare2 - от A до Z
 
ПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программирования
ПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программированияПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программирования
ПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программирования
 
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
 
Дмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVM
Дмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVMДмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVM
Дмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVM
 
разработка серверов и серверных приложений лекция №3
разработка серверов и серверных приложений лекция №3разработка серверов и серверных приложений лекция №3
разработка серверов и серверных приложений лекция №3
 
разработка серверов и серверных приложений лекция №2
разработка серверов и серверных приложений лекция №2разработка серверов и серверных приложений лекция №2
разработка серверов и серверных приложений лекция №2
 
Основы и применение статического анализа кода при разработке лекция 1
Основы и применение статического анализа кода при разработке лекция 1Основы и применение статического анализа кода при разработке лекция 1
Основы и применение статического анализа кода при разработке лекция 1
 
Erlang
ErlangErlang
Erlang
 
Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...
Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...
Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...
 
C# 5.0. Взгляд в будущее
C# 5.0. Взгляд в будущееC# 5.0. Взгляд в будущее
C# 5.0. Взгляд в будущее
 

En vedette

Саша Гладких и Андрей Старков
Саша Гладких и Андрей СтарковСаша Гладких и Андрей Старков
Саша Гладких и Андрей Старков
CodeFest
 

En vedette (20)

Денис Паясь
Денис ПаясьДенис Паясь
Денис Паясь
 
Роман Янке
Роман ЯнкеРоман Янке
Роман Янке
 
Jan Jongboom
Jan JongboomJan Jongboom
Jan Jongboom
 
Иван Фролков
Иван ФролковИван Фролков
Иван Фролков
 
Дмитрий Кулижников
Дмитрий КулижниковДмитрий Кулижников
Дмитрий Кулижников
 
Сергей Крапивенский
Сергей КрапивенскийСергей Крапивенский
Сергей Крапивенский
 
Евгений Брянцев
Евгений БрянцевЕвгений Брянцев
Евгений Брянцев
 
Олег Бартунов и Иван Панченко
Олег Бартунов и Иван ПанченкоОлег Бартунов и Иван Панченко
Олег Бартунов и Иван Панченко
 
Андрей Светлов
Андрей СветловАндрей Светлов
Андрей Светлов
 
Денис Башев
Денис БашевДенис Башев
Денис Башев
 
Андрей Ситник
Андрей СитникАндрей Ситник
Андрей Ситник
 
Саша Гладких и Андрей Старков
Саша Гладких и Андрей СтарковСаша Гладких и Андрей Старков
Саша Гладких и Андрей Старков
 
Дмитрий Химион и Сергей Белов
Дмитрий Химион и Сергей БеловДмитрий Химион и Сергей Белов
Дмитрий Химион и Сергей Белов
 
Денис Иванов
Денис ИвановДенис Иванов
Денис Иванов
 
Павел Мочалкин
Павел МочалкинПавел Мочалкин
Павел Мочалкин
 
Денис Запорожан
Денис ЗапорожанДенис Запорожан
Денис Запорожан
 
Антон Шаяхов
Антон ШаяховАнтон Шаяхов
Антон Шаяхов
 
Michael Widenius
Michael WideniusMichael Widenius
Michael Widenius
 
Александр Лукин
Александр ЛукинАлександр Лукин
Александр Лукин
 
Иван Величко
Иван ВеличкоИван Величко
Иван Величко
 

Similaire à Вадим Макеев

Groovy On Grails
Groovy On GrailsGroovy On Grails
Groovy On Grails
guest32215a
 
Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTM...
Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTM...Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTM...
Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTM...
Ontico
 
20130429 dynamic c_c++_program_analysis-alexey_samsonov
20130429 dynamic c_c++_program_analysis-alexey_samsonov20130429 dynamic c_c++_program_analysis-alexey_samsonov
20130429 dynamic c_c++_program_analysis-alexey_samsonov
Computer Science Club
 
20111204 computer graphics_galinsky_lecture12_real_time
20111204 computer graphics_galinsky_lecture12_real_time20111204 computer graphics_galinsky_lecture12_real_time
20111204 computer graphics_galinsky_lecture12_real_time
Computer Science Club
 
View как чистая функция от состояния базы данных - Илья Беда, bro.agency
View как чистая функция от состояния базы данных  - Илья Беда, bro.agencyView как чистая функция от состояния базы данных  - Илья Беда, bro.agency
View как чистая функция от состояния базы данных - Илья Беда, bro.agency
it-people
 

Similaire à Вадим Макеев (20)

Богдан Отводенко - Модульные сетки без хаков CSS Grid Layout
Богдан Отводенко - Модульные сетки без хаков CSS Grid LayoutБогдан Отводенко - Модульные сетки без хаков CSS Grid Layout
Богдан Отводенко - Модульные сетки без хаков CSS Grid Layout
 
Модульные сетки без хаков: CSS Grid Layout!
Модульные сетки без хаков: CSS Grid Layout!Модульные сетки без хаков: CSS Grid Layout!
Модульные сетки без хаков: CSS Grid Layout!
 
C++/CLI Now Supported in PVS-Studio and CppCat
C++/CLI Now Supported in PVS-Studio and CppCatC++/CLI Now Supported in PVS-Studio and CppCat
C++/CLI Now Supported in PVS-Studio and CppCat
 
Groovy On Grails
Groovy On GrailsGroovy On Grails
Groovy On Grails
 
PureMVC в картинках - часть 1
PureMVC в картинках - часть 1PureMVC в картинках - часть 1
PureMVC в картинках - часть 1
 
pgday17. How shared memory works in modern PostgreSQL
pgday17. How shared memory works in modern PostgreSQLpgday17. How shared memory works in modern PostgreSQL
pgday17. How shared memory works in modern PostgreSQL
 
Hacking PostgreSQL. Локальная память процессов. Контексты памяти.
Hacking PostgreSQL. Локальная память процессов. Контексты памяти.Hacking PostgreSQL. Локальная память процессов. Контексты памяти.
Hacking PostgreSQL. Локальная память процессов. Контексты памяти.
 
Docker penetration
Docker penetrationDocker penetration
Docker penetration
 
Проникновение в Docker с примерами
Проникновение в Docker с примерамиПроникновение в Docker с примерами
Проникновение в Docker с примерами
 
Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTM...
Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTM...Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTM...
Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTM...
 
20130429 dynamic c_c++_program_analysis-alexey_samsonov
20130429 dynamic c_c++_program_analysis-alexey_samsonov20130429 dynamic c_c++_program_analysis-alexey_samsonov
20130429 dynamic c_c++_program_analysis-alexey_samsonov
 
Bytecode
BytecodeBytecode
Bytecode
 
ECMAscript harmony
ECMAscript harmonyECMAscript harmony
ECMAscript harmony
 
Михаил Давыдов "Масштабируемые JavaScript-приложения"
Михаил Давыдов "Масштабируемые JavaScript-приложения"Михаил Давыдов "Масштабируемые JavaScript-приложения"
Михаил Давыдов "Масштабируемые JavaScript-приложения"
 
20111204 computer graphics_galinsky_lecture12_real_time
20111204 computer graphics_galinsky_lecture12_real_time20111204 computer graphics_galinsky_lecture12_real_time
20111204 computer graphics_galinsky_lecture12_real_time
 
Чем заняться вечером, если я знаю сколько будет ++i + ++i / Андрей Бородин (Y...
Чем заняться вечером, если я знаю сколько будет ++i + ++i / Андрей Бородин (Y...Чем заняться вечером, если я знаю сколько будет ++i + ++i / Андрей Бородин (Y...
Чем заняться вечером, если я знаю сколько будет ++i + ++i / Андрей Бородин (Y...
 
Принципы работы статического анализатора кода PVS-Studio
Принципы работы статического анализатора кода PVS-StudioПринципы работы статического анализатора кода PVS-Studio
Принципы работы статического анализатора кода PVS-Studio
 
Лекция 6. Стандарт OpenMP
Лекция 6. Стандарт OpenMPЛекция 6. Стандарт OpenMP
Лекция 6. Стандарт OpenMP
 
OSM to Garmin
OSM to GarminOSM to Garmin
OSM to Garmin
 
View как чистая функция от состояния базы данных - Илья Беда, bro.agency
View как чистая функция от состояния базы данных  - Илья Беда, bro.agencyView как чистая функция от состояния базы данных  - Илья Беда, bro.agency
View как чистая функция от состояния базы данных - Илья Беда, bro.agency
 

Plus de CodeFest

Plus de CodeFest (20)

Alexander Graebe
Alexander GraebeAlexander Graebe
Alexander Graebe
 
Никита Прокопов
Никита ПрокоповНикита Прокопов
Никита Прокопов
 
Денис Баталов
Денис БаталовДенис Баталов
Денис Баталов
 
Елена Гальцина
Елена ГальцинаЕлена Гальцина
Елена Гальцина
 
Александр Калашников
Александр КалашниковАлександр Калашников
Александр Калашников
 
Ирина Иванова
Ирина ИвановаИрина Иванова
Ирина Иванова
 
Marko Berković
Marko BerkovićMarko Berković
Marko Berković
 
Денис Кортунов
Денис КортуновДенис Кортунов
Денис Кортунов
 
Александр Зимин
Александр ЗиминАлександр Зимин
Александр Зимин
 
Сергей Крапивенский
Сергей КрапивенскийСергей Крапивенский
Сергей Крапивенский
 
Сергей Игнатов
Сергей ИгнатовСергей Игнатов
Сергей Игнатов
 
Николай Крапивный
Николай КрапивныйНиколай Крапивный
Николай Крапивный
 
Alexander Graebe
Alexander GraebeAlexander Graebe
Alexander Graebe
 
Вадим Смирнов
Вадим СмирновВадим Смирнов
Вадим Смирнов
 
Константин Осипов
Константин ОсиповКонстантин Осипов
Константин Осипов
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele Rialdi
 
Максим Пугачев
Максим ПугачевМаксим Пугачев
Максим Пугачев
 
Rene Groeschke
Rene GroeschkeRene Groeschke
Rene Groeschke
 
Иван Бондаренко
Иван БондаренкоИван Бондаренко
Иван Бондаренко
 
Mete Atamel
Mete AtamelMete Atamel
Mete Atamel
 

Вадим Макеев