Разбираемся с lock-файлами в NPM 5, свежий перевод от devSchacht — https://medium.com/devschacht/4bf615c6cd50
Браузерные войны: когда Netscape встретил Microsoft, первая часть истории в переводе Дмитрия Мананникова — https://medium.com/@slonoed/351dcf170e59
Функциональное программирование на JavaScript это антипаттерн, размышления Алекса Диксона — https://medium.com/@alexdixon/58526819f21e
Иллюзия скорости: как увеличить отзывчивость интерфейса с помощью UX-приёмов вместо оптимизации производительности — https://paulbakaus.com/tutorials/performance/the-illusion-of-speed/
Браузерные войны: как победил веб, вторая часть истории в переводе Дмитрия Мананникова — https://medium.com/@slonoed/92168ce17ae5
Medium
Браузерные войны, часть 2: как победил веб
Перевод статьи Browser Wars Part 2: How the Web Was Won от Jay Hoffmann. Это вторая часть истории о браузерных войнах. Не забудьте ознаком…
Нейросети с нуля для JS-разработчиков, первая часть руководства в переводе devSchacht — https://medium.com/devschacht/30c64ee9dbba
Как сделать доступное модальное окно? Рассказывает Роб Додсон в свежем выпуске A11ycasts — https://youtu.be/JS68faEUduk
БЭМ на примерах: зачем нужна эта методология и как начинающим избежать распространённых ошибок — https://seesparkbox.com/foundry/bem_by_example
Кому нужны флексы, если на них не делают сайты? Разбирается Вадим Макеев в свежем выпуске «HTML-шортов» — https://youtu.be/Wpglfz7aXzo
До 70% наших стилей состоит из повторений: результаты исследования Йенса Майерта и выводы — https://meiert.com/en/blog/20170531/70-percent-css-repetition/
Можно ли написать сайт в Excel? Энтузиаст Воган Мэй рассказал о воплощении этой безумной идеи, перевод от @tproger_official — https://goo.gl/YdLjw4
Что за штуковины постоянно пишут в самом верху SVG? Питер Новелл разобрался и делится шпаргалкой — https://medium.com/@pnowelldesign/f3ad198eb54e
Pa11y, набор инструментов для автоматизированного тестирования доступности — http://pa11y.org/
Старый добрый аналог Excel в 25 строк кода, переписанный на ES 2015 — http://jsfiddle.net/ondras/o3tzx1px/
[tl;dr]
Что за атрибут inert и зачем он нужен?
Как можно догадаться из названия, этот атрибут помечает элемент как инертный (или неактивный, но не путайте с disabled). Для таких элементов (и всего дерева их потомков) отключается срабатывание пользовательских событий (например, фокус по нажатию tab, выделение текста, клики). Ассистивные технологии вроде экранных читалок просто игнорируют такие элементы. Также спецификация рекомендует разработчикам браузеров игнорировать инертные элементы при поиске по содержимому страницы.
По сути, этот атрибут сочетает в себе поведение tabindex="-1", aria-hidden и pointer-events: none. Им следует помечать скрытые модальные окна, выпадающие меню, невидимые слайды карусели и другие подобные элементы интерфейса. Это улучшит доступность ваших интерфейсов: при навигации с клавиатуры или при использовании экранных читалок инертные элементы просто будут игнорироваться.
Полезные ссылки:
— inert в спецификации whatwg (https://vk.cc/6NwDJF);
— история появления, способы применения, описание пробелов в спецификации и полифил (https://github.com/wicg/inert);
— выпуск A11ycasts с Робом Додсоном, посвящённый атрибуту
Что за атрибут inert и зачем он нужен?
Как можно догадаться из названия, этот атрибут помечает элемент как инертный (или неактивный, но не путайте с disabled). Для таких элементов (и всего дерева их потомков) отключается срабатывание пользовательских событий (например, фокус по нажатию tab, выделение текста, клики). Ассистивные технологии вроде экранных читалок просто игнорируют такие элементы. Также спецификация рекомендует разработчикам браузеров игнорировать инертные элементы при поиске по содержимому страницы.
По сути, этот атрибут сочетает в себе поведение tabindex="-1", aria-hidden и pointer-events: none. Им следует помечать скрытые модальные окна, выпадающие меню, невидимые слайды карусели и другие подобные элементы интерфейса. Это улучшит доступность ваших интерфейсов: при навигации с клавиатуры или при использовании экранных читалок инертные элементы просто будут игнорироваться.
Полезные ссылки:
— inert в спецификации whatwg (https://vk.cc/6NwDJF);
— история появления, способы применения, описание пробелов в спецификации и полифил (https://github.com/wicg/inert);
— выпуск A11ycasts с Робом Додсоном, посвящённый атрибуту
inert (https://youtu.be/fGLp_gfMMGU).Как делался фронтенд Stripe Connect: CSS-гриды, 3D-анимации, графика на CSS и другие подробности — https://stripe.com/blog/connect-front-end-experience
Иван Акулов подробно рассказал, как он починил неработающий тришейкинг в библиотеке polished — https://iamakulov.com/notes/polished-webpack/
Александр Сурма и Пол Льюис из Google лайвкодят с нуля кодсплиттинг для приложения — https://youtu.be/4KVeNoN1aFM