Suche senden
Hochladen
Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33
•
0 gefällt mir
•
263 views
MoscowJS
Folgen
Адаптируем макеты его под различные устройства.
Weniger lesen
Mehr lesen
Internet
Melden
Teilen
Melden
Teilen
1 von 36
Empfohlen
Сетки для всего или как использовать чужие недостатки (Василий Аксенов)
Сетки для всего или как использовать чужие недостатки (Василий Аксенов)
Ontico
Сетки для всего или как использовать чужие недостатки
Сетки для всего или как использовать чужие недостатки
Vasiliy Aksyonov
Вы не нашли дизайнера (для HackDay #Penza)
Вы не нашли дизайнера (для HackDay #Penza)
Mark Martemianov
Что делать если вы не нашли дизайнера в команду?
Что делать если вы не нашли дизайнера в команду?
Mikhail Kulakov
Александр Олещук «События и а/б тесты как способ познать себя»
Александр Олещук «События и а/б тесты как способ познать себя»
it-people
"Web Audio Api", Анатолий Найда, MoscowJS 27
"Web Audio Api", Анатолий Найда, MoscowJS 27
MoscowJS
«Оптимизируем React, не усложняя архитектуру», Вопиловский Константин, Moscow...
«Оптимизируем React, не усложняя архитектуру», Вопиловский Константин, Moscow...
MoscowJS
MSI In-Store Pickup Функционал & сложности
MSI In-Store Pickup Функционал & сложности
Magecom UK Limited
Empfohlen
Сетки для всего или как использовать чужие недостатки (Василий Аксенов)
Сетки для всего или как использовать чужие недостатки (Василий Аксенов)
Ontico
Сетки для всего или как использовать чужие недостатки
Сетки для всего или как использовать чужие недостатки
Vasiliy Aksyonov
Вы не нашли дизайнера (для HackDay #Penza)
Вы не нашли дизайнера (для HackDay #Penza)
Mark Martemianov
Что делать если вы не нашли дизайнера в команду?
Что делать если вы не нашли дизайнера в команду?
Mikhail Kulakov
Александр Олещук «События и а/б тесты как способ познать себя»
Александр Олещук «События и а/б тесты как способ познать себя»
it-people
"Web Audio Api", Анатолий Найда, MoscowJS 27
"Web Audio Api", Анатолий Найда, MoscowJS 27
MoscowJS
«Оптимизируем React, не усложняя архитектуру», Вопиловский Константин, Moscow...
«Оптимизируем React, не усложняя архитектуру», Вопиловский Константин, Moscow...
MoscowJS
MSI In-Store Pickup Функционал & сложности
MSI In-Store Pickup Функционал & сложности
Magecom UK Limited
IBC Russia 2014 (выступление eski.mobi)
IBC Russia 2014 (выступление eski.mobi)
Artiom Tsympov
Кроссбраузерные решения в рекламной сети Яндекса
Кроссбраузерные решения в рекламной сети Яндекса
Media Gorod
Игорь Шевченко — Новая выдача Поиска для сайта - кастомные теги, CSS3 и JavaS...
Игорь Шевченко — Новая выдача Поиска для сайта - кастомные теги, CSS3 и JavaS...
Yandex
Js templating stepan_reznikov
Js templating stepan_reznikov
yaevents
Степан Резников "Шаблонизация на клиенте"
Степан Резников "Шаблонизация на клиенте"
Yandex
Владимир Гриненко "Верстка для touch-устройст (webkit)"
Владимир Гриненко "Верстка для touch-устройст (webkit)"
Yandex
Cовременный станок верстальщика
Cовременный станок верстальщика
mcslayer
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Yandex
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
Yandex
Как сделать Instagram в браузере — Дмитрий Дудин, xbSoftware
Как сделать Instagram в браузере — Дмитрий Дудин, xbSoftware
Yandex
Оптимизация графики на практике
Оптимизация графики на практике
Timophy Chaptykov
Experience of Volume Rendering in Virtual Reality
Experience of Volume Rendering in Virtual Reality
Alexander Korshak
Mobile .NET gamedev is not only Unity
Mobile .NET gamedev is not only Unity
Grigory
Александр Русаков - TypeScript 2 in action
Александр Русаков - TypeScript 2 in action
MoscowJS
Виктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public API
MoscowJS
Favicon на стероидах
Favicon на стероидах
MoscowJS
E2E-тестирование мобильных приложений
E2E-тестирование мобильных приложений
MoscowJS
Reliable DOM testing with browser-monkey
Reliable DOM testing with browser-monkey
MoscowJS
Basis.js - Production Ready SPA Framework
Basis.js - Production Ready SPA Framework
MoscowJS
Контекст в React, Николай Надоричев, MoscowJS 31
Контекст в React, Николай Надоричев, MoscowJS 31
MoscowJS
Верстка Canvas, Алексей Охрименко, MoscowJS 31
Верстка Canvas, Алексей Охрименко, MoscowJS 31
MoscowJS
Веб без интернет соединения, Михаил Дунаев, MoscowJS 31
Веб без интернет соединения, Михаил Дунаев, MoscowJS 31
MoscowJS
Weitere ähnliche Inhalte
Ähnlich wie Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33
IBC Russia 2014 (выступление eski.mobi)
IBC Russia 2014 (выступление eski.mobi)
Artiom Tsympov
Кроссбраузерные решения в рекламной сети Яндекса
Кроссбраузерные решения в рекламной сети Яндекса
Media Gorod
Игорь Шевченко — Новая выдача Поиска для сайта - кастомные теги, CSS3 и JavaS...
Игорь Шевченко — Новая выдача Поиска для сайта - кастомные теги, CSS3 и JavaS...
Yandex
Js templating stepan_reznikov
Js templating stepan_reznikov
yaevents
Степан Резников "Шаблонизация на клиенте"
Степан Резников "Шаблонизация на клиенте"
Yandex
Владимир Гриненко "Верстка для touch-устройст (webkit)"
Владимир Гриненко "Верстка для touch-устройст (webkit)"
Yandex
Cовременный станок верстальщика
Cовременный станок верстальщика
mcslayer
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Yandex
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
Yandex
Как сделать Instagram в браузере — Дмитрий Дудин, xbSoftware
Как сделать Instagram в браузере — Дмитрий Дудин, xbSoftware
Yandex
Оптимизация графики на практике
Оптимизация графики на практике
Timophy Chaptykov
Experience of Volume Rendering in Virtual Reality
Experience of Volume Rendering in Virtual Reality
Alexander Korshak
Mobile .NET gamedev is not only Unity
Mobile .NET gamedev is not only Unity
Grigory
Ähnlich wie Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33
(13)
IBC Russia 2014 (выступление eski.mobi)
IBC Russia 2014 (выступление eski.mobi)
Кроссбраузерные решения в рекламной сети Яндекса
Кроссбраузерные решения в рекламной сети Яндекса
Игорь Шевченко — Новая выдача Поиска для сайта - кастомные теги, CSS3 и JavaS...
Игорь Шевченко — Новая выдача Поиска для сайта - кастомные теги, CSS3 и JavaS...
Js templating stepan_reznikov
Js templating stepan_reznikov
Степан Резников "Шаблонизация на клиенте"
Степан Резников "Шаблонизация на клиенте"
Владимир Гриненко "Верстка для touch-устройст (webkit)"
Владимир Гриненко "Верстка для touch-устройст (webkit)"
Cовременный станок верстальщика
Cовременный станок верстальщика
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
Как сделать Instagram в браузере — Дмитрий Дудин, xbSoftware
Как сделать Instagram в браузере — Дмитрий Дудин, xbSoftware
Оптимизация графики на практике
Оптимизация графики на практике
Experience of Volume Rendering in Virtual Reality
Experience of Volume Rendering in Virtual Reality
Mobile .NET gamedev is not only Unity
Mobile .NET gamedev is not only Unity
Mehr von MoscowJS
Александр Русаков - TypeScript 2 in action
Александр Русаков - TypeScript 2 in action
MoscowJS
Виктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public API
MoscowJS
Favicon на стероидах
Favicon на стероидах
MoscowJS
E2E-тестирование мобильных приложений
E2E-тестирование мобильных приложений
MoscowJS
Reliable DOM testing with browser-monkey
Reliable DOM testing with browser-monkey
MoscowJS
Basis.js - Production Ready SPA Framework
Basis.js - Production Ready SPA Framework
MoscowJS
Контекст в React, Николай Надоричев, MoscowJS 31
Контекст в React, Николай Надоричев, MoscowJS 31
MoscowJS
Верстка Canvas, Алексей Охрименко, MoscowJS 31
Верстка Canvas, Алексей Охрименко, MoscowJS 31
MoscowJS
Веб без интернет соединения, Михаил Дунаев, MoscowJS 31
Веб без интернет соединения, Михаил Дунаев, MoscowJS 31
MoscowJS
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
MoscowJS
Создание WYSIWIG-редакторов для веба, Егор Яковишен, Setka, MoscowJs 33
Создание WYSIWIG-редакторов для веба, Егор Яковишен, Setka, MoscowJs 33
MoscowJS
Promise me an Image... Антон Корзунов, Яндекс, MoscowJs 33
Promise me an Image... Антон Корзунов, Яндекс, MoscowJs 33
MoscowJS
Регрессионное тестирование на lenta.ru, Кондратенко Павел, Rambler&Co, Moscow...
Регрессионное тестирование на lenta.ru, Кондратенко Павел, Rambler&Co, Moscow...
MoscowJS
"Опыт разработки универсальной библиотеки визуальных компонентов в HeadHunter...
"Опыт разработки универсальной библиотеки визуальных компонентов в HeadHunter...
MoscowJS
"Во все тяжкие с responsive images", Павел Померанцев, MoscowJS 29
"Во все тяжкие с responsive images", Павел Померанцев, MoscowJS 29
MoscowJS
"AMP - технология на три буквы", Макс Фролов, MoscowJS 29
"AMP - технология на три буквы", Макс Фролов, MoscowJS 29
MoscowJS
"Observable и Computed на пример KnockoutJS", Ольга Кобец, MoscowJS 29
"Observable и Computed на пример KnockoutJS", Ольга Кобец, MoscowJS 29
MoscowJS
«Пиринговый веб на JavaScript», Денис Глазков, MoscowJS 28
«Пиринговый веб на JavaScript», Денис Глазков, MoscowJS 28
MoscowJS
"Доклад не про React", Антон Виноградов, MoscowJS 27
"Доклад не про React", Антон Виноградов, MoscowJS 27
MoscowJS
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
MoscowJS
Mehr von MoscowJS
(20)
Александр Русаков - TypeScript 2 in action
Александр Русаков - TypeScript 2 in action
Виктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public API
Favicon на стероидах
Favicon на стероидах
E2E-тестирование мобильных приложений
E2E-тестирование мобильных приложений
Reliable DOM testing with browser-monkey
Reliable DOM testing with browser-monkey
Basis.js - Production Ready SPA Framework
Basis.js - Production Ready SPA Framework
Контекст в React, Николай Надоричев, MoscowJS 31
Контекст в React, Николай Надоричев, MoscowJS 31
Верстка Canvas, Алексей Охрименко, MoscowJS 31
Верстка Canvas, Алексей Охрименко, MoscowJS 31
Веб без интернет соединения, Михаил Дунаев, MoscowJS 31
Веб без интернет соединения, Михаил Дунаев, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Создание WYSIWIG-редакторов для веба, Егор Яковишен, Setka, MoscowJs 33
Создание WYSIWIG-редакторов для веба, Егор Яковишен, Setka, MoscowJs 33
Promise me an Image... Антон Корзунов, Яндекс, MoscowJs 33
Promise me an Image... Антон Корзунов, Яндекс, MoscowJs 33
Регрессионное тестирование на lenta.ru, Кондратенко Павел, Rambler&Co, Moscow...
Регрессионное тестирование на lenta.ru, Кондратенко Павел, Rambler&Co, Moscow...
"Опыт разработки универсальной библиотеки визуальных компонентов в HeadHunter...
"Опыт разработки универсальной библиотеки визуальных компонентов в HeadHunter...
"Во все тяжкие с responsive images", Павел Померанцев, MoscowJS 29
"Во все тяжкие с responsive images", Павел Померанцев, MoscowJS 29
"AMP - технология на три буквы", Макс Фролов, MoscowJS 29
"AMP - технология на три буквы", Макс Фролов, MoscowJS 29
"Observable и Computed на пример KnockoutJS", Ольга Кобец, MoscowJS 29
"Observable и Computed на пример KnockoutJS", Ольга Кобец, MoscowJS 29
«Пиринговый веб на JavaScript», Денис Глазков, MoscowJS 28
«Пиринговый веб на JavaScript», Денис Глазков, MoscowJS 28
"Доклад не про React", Антон Виноградов, MoscowJS 27
"Доклад не про React", Антон Виноградов, MoscowJS 27
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33
1.
Вопиловский Константин KamaGames Studio Предсказуемый Viewport
2.
? 2 Зачем
3.
Вот зоопарк 3
4.
Плотность пикселей 4
5.
Размер 5
6.
Расстояние 6
7.
Устройства ввода 7
8.
Нам нужно больше
макетов 8
9.
9 Нет, нам нужна
оптимизация
10.
10 Практика
11.
desktop compact mobile 11 var
templateType = ...
12.
12
13.
userAgent 13
14.
mobile compact desktop 14 A
B
15.
var templateType =
“mobile” Viewport ? 15
16.
Viewport 16 ➔ <meta name="viewport"
...> ➔ @viewport {...} ➔ или не указывать
17.
<meta name="viewport"> content="width=device-width" content="width=360px" 17
18.
<meta content="width=device-width" …> 18 device-width
(css width): 320, 346, 360, 390, 400, 504, …
19.
Не всякая резина
одинаково полезна 19
20.
То маленький, то
большой 20
21.
<meta name="viewport" content="width=360px"> 21
22.
<meta name="viewport" content="width=360px"> 22 Неадекватное
поведение браузеров
23.
23 <meta name="viewport" content="width=360px"> ●
меняем width в зависимости от ориентации ● элементы c {overflow: scroll} ● часто по клику появляется лупа ● итд
24.
? 24
25.
rem 25
26.
“pxrem” 26
27.
#!/bin/bash px2rem2px index.css >
index.css 27
28.
rem 28
29.
font-size: calc(100vw /
360) 1px == 1rem 29
30.
font-size: calc(100vw /
360) 1px == 1rem 100 100100 30 100 400
31.
font-size: calc(1000vw /
360) 10px == 1rem 31
32.
.-viewport-mobile-landscape: font-size: calc(1000vw
/ 520) .-viewport-mobile-portrait: font-size: calc(1000vw / 360) 32
33.
.-viewport-tablet-landscape: font-size: calc(1000vw
/ 980) .-viewport-tablet-portrait: font-size: calc(1000vw / 640) calc(1000vw / 800) calc(1000vw / 600) 33
34.
Возможные проблемы - если
виртуальный “px” меньше физического - не забываем про javascript - интеграция с внешними виджетами - это хак ... 34
35.
.-viewport-desktop: font-size: 10px .-viewport-tablet-landscape:
font-size: calc(1000vw / 980) .-viewport-tablet-portrait: font-size: calc(1000vw / 640) .-viewport-mobile-landscape: font-size: calc(1000vw / 520) .-viewport-mobile-portrait: font-size: calc(1000vw / 360) 35 Итого:
36.
Спасибо! вопросы ? 36 Вопиловский Константин https://github.com/vflash