Выпуск №516. Никита Дубко и Вадим Макеев про новинки Firefox 148, ленивую загрузку медиа, перфоманс
— Лайв на Ютубе
— Слушайте на Ютубе
— Ссылки на сайте
<img> и сжатие со словарями.— Лайв на Ютубе
— Слушайте на Ютубе
— Ссылки на сайте
🔥23❤8👍8
516. Новинки Firefox 148, ленивая загрузка медиа, перфоманс img…
Веб-стандарты
00:01:30 Новинки Firefox 148
00:25:40 Ленивая загрузка медиа
00:41:25 Перфоманс img
01:22:39 Сжатие со словарями
01:46:15 Ответы на вопросы
00:25:40 Ленивая загрузка медиа
00:41:25 Перфоманс img
01:22:39 Сжатие со словарями
01:46:15 Ответы на вопросы
❤22🔥7👍6
Нативная случайность в CSS. Альваро Монторо разбирает
https://alvaromontoro.com/blog/68092/native-random-values-in-css
random() и random-item(), две новые CSS-функции из Values and Units Module Level 5. random() возвращает значение в заданном диапазоне с опциональным шагом, а random-item() выбирает из списка дискретных значений. Обе функции поддерживают параметры совместного использования для корреляции результатов между свойствами и элементами. Пока частичная поддержка есть только в Safari 26.2. #css #safarihttps://alvaromontoro.com/blog/68092/native-random-values-in-css
👍19❤4
Как задать цвет темы для Safari 26. Мартин Грубингер рассказывает, что Safari 26 отказался от
https://grooovinger.com/notes/2026-02-27-safari-26-header-background
<meta name="theme-color"> и теперь определяет цвет интерфейса по фону body или фиксированного элемента вверху страницы. В статье предложен трюк на scroll-driven анимациях: скрытый фиксированный элемент сохраняет нужный цвет, пока не уходит из вида при прокрутке. Подход не работает, если страница перезагружается не в начальной позиции прокрутки. #safari #csshttps://grooovinger.com/notes/2026-02-27-safari-26-header-background
🔥17👍3
Словарное сжатие наконец здесь, и результаты впечатляют. Тим Перри объясняет, как Compression Dictionary Transport работает с Zstandard и Brotli поверх HTTP: предыдущие ответы используются как словари для сжатия данных почти до размера дельт. JS-бандлы YouTube уменьшаются до 90% по сравнению с Brotli, HTML поиска Google — почти на 50%. Уже используется в Google, Shopify, Pinterest и Notion. Chrome 130+, Safari и Firefox на подходе. #performance #http
https://httptoolkit.com/blog/dictionary-compression-performance-zstd-brotli/
https://httptoolkit.com/blog/dictionary-compression-performance-zstd-brotli/
🔥58👍5❤4
Новый мета-тег для поддержки масштабирования текста на мобильных. Мануэль Матузович показывает элемент
https://youtu.be/XVIgKEOVfVg
<meta name="textscale"> — предложение, которое позволяет сайтам учитывать настройки размера текста ОС на мобильных устройствах. Относительные единицы em и rem масштабируются с настройками пользователя, а пиксельные значения остаются без изменений. Пока доступно только в Chrome Canary. Firefox уже реагирует на настройки ОС, но масштабирует весь вьюпорт целиком. #html #a11yhttps://youtu.be/XVIgKEOVfVg
❤15👍10🔥5
Слишком ранний брейкпоинт. Ахмад Шадид объясняет, почему многие сайты переключаются на мобильную раскладку слишком рано. На примерах Time и TechCrunch он показывает, как дизайн ломается в сплитах, на планшетах и в превью ссылок iOS. Решение: промежуточные брейкпоинты, выражения от контейнера и гибкие раскладки на гридах и флексах, которые подстраиваются под доступное пространство. #css #layout
https://ishadeed.com/article/too-early-breakpoint/
https://ishadeed.com/article/too-early-breakpoint/
👍24🔥12❤1🎉1
Выпуск №517. Лёша Красиков, Полина Гуртовая, Нина Торгунакова, Никита Дубко про прототип focusgroup, запись видео в Replit, а также большой холивар про Tailwind.
— Лайв на Ютубе
— Слушайте на Ютубе
— Ссылки на сайте
— Лайв на Ютубе
— Слушайте на Ютубе
— Ссылки на сайте
❤23🔥13👍6🎉3
517. Прототип focusgroup, запись видео в Replit и большой холивар…
Веб-стандарты
00:01:52 Прототип атрибута focusgroup
00:17:20 Запись видео в Replit
00:32:21 Докатились до Tailwind
00:51:32 (Не)удобство Tailwind
01:22:20 Tailwind на практике
01:39:31 Альтернативы и будущее
00:17:20 Запись видео в Replit
00:32:21 Докатились до Tailwind
00:51:32 (Не)удобство Tailwind
01:22:20 Tailwind на практике
01:39:31 Альтернативы и будущее
❤23🔥8👍4🎉4
CodePen 2.0 вышел в публичную бету. У пенов теперь своя файловая система с папками, новый блочный процесс сборки, где можно комбинировать технологии без конфигурации, совместная работа в реальном времени по приглашению, омнибар для быстрого доступа к файлам и командам, а также настоящие настройки приватности с паролями и доступом только по приглашению. Без установки, без командной строки, без сложной настройки. #tools #css
https://codepen.io/beta
https://codepen.io/beta
🔥50❤10👍6
SVG в вебе: сравнение скорости в зависимости от способа загрузки. Джоан Леон сравнивает пять методов и то, как каждый влияет на кеширование, запросы и рендеринг: инлайн
https://joanleon.dev/en/svg-optimization/
<svg>, <img>, <object>, CSS-фон и спрайты с <use>. Главный анти-паттерн: встраивание растровых изображений в base64 внутри SVG увеличивает размер файла на 33% и блокирует рендеринг. #svg #performancehttps://joanleon.dev/en/svg-optimization/
👍28🔥16
Всё, что вы никогда не хотели знать о visually-hidden. Дэвид Бушелл разбирает двадцатилетнюю историю CSS-паттерна visually-hidden и проверяет, хватит ли в 2026 году одних
https://dbushell.com/2026/02/20/visually-hidden/
position: absolute и clip-path: circle(0). Статья объясняет, почему у платформы до сих пор нет нативной альтернативы и почему стандартизация хака может скорее навредить, чем помочь. #a11y #csshttps://dbushell.com/2026/02/20/visually-hidden/
👍23❤5
Новинки Chrome 146. CSS-анимации по скролу позволяют декларативно управлять CSS-анимациями по позиции прокрутки. Sanitizer API помогает защитить приложения от XSS. WebGPU получает режим совместимости со старыми графическими API. Также добавлены
https://developer.chrome.com/release-notes/146
Iterator.concat, мета-элемент для масштабирования текста на мобильных, улучшения Navigation API и более точные метрики LCP. #chrome #browserhttps://developer.chrome.com/release-notes/146
🔥21👍2
Вы не знаете HTML-таблицы. Фрэнк Тейлор выходит за пределы базовых понятий и разбирает терминологию таблиц, API Table Object Model, семантику заголовочных ячеек с атрибутами
https://blog.frankmtaylor.com/2026/03/05/you-dont-know-html-tables/
scope и headers, а также практические паттерны для создания доступных и хорошо структурированных таблиц с <thead>, <tbody>, <tfoot> и хелперами на JavaScript. #html #a11yhttps://blog.frankmtaylor.com/2026/03/05/you-dont-know-html-tables/
👍26🔥10❤9
Выпуск №518. Никита Дубко и Алексей Симоненко про новинки Chrome 146, релиз Vite 8 и краткую историю доменов.
— Лайв на Ютубе
— Слушайте на Ютубе
— Ссылки на сайте
— Лайв на Ютубе
— Слушайте на Ютубе
— Ссылки на сайте
❤17👍2
518. Новинки Chrome 146, релиз Vite 8 и краткая история доменов
Веб-стандарты
00:00:59 Новинки Chrome 146
00:40:47 Релиз Vite 8
01:08:54 Краткая история доменов
00:40:47 Релиз Vite 8
01:08:54 Краткая история доменов
🔥13❤8👍2
Уход от Sass: нативный нестинг CSS. Стюарт Робсон рассказывает, как работает нативная вложенность CSS в браузерах и сравнивает её с Sass. Он разбирает специфичность, символ
https://www.alwaystwisted.com/articles/UnSassing-my-CSS-nesting
&, практические отличия от Sass и примеры компонентов: алерты, карточки и формы поиска. А также интеграция с выражениями от контейнера, :has() и prefers-reduced-motion. #css #learnhttps://www.alwaystwisted.com/articles/UnSassing-my-CSS-nesting
🔥28👍7❤3
Представляем view-transitions-mock — невизуальный полифил для view transition в рамках документа. Брамус Ван Дамм создал JavaScript-реализацию View Transition API совместимую со спецификацией, которая работает во всех браузерах без кучи условий в коде. Она обрабатывает
https://www.bram.us/2026/03/11/view-transitions-mock-is-a-non-visual-polyfill-for-same-document-view-transitions/
document.startViewTransition(), класс ViewTransition с промисами и типы View Transition. Обновления DOM идентичны нативным, но анимации пропускаются в старых браузерах. #viewtransition #polyfillhttps://www.bram.us/2026/03/11/view-transitions-mock-is-a-non-visual-polyfill-for-same-document-view-transitions/
🔥34
Temporal: девятилетний путь к исправлению времени в JavaScript. Джейсон Уильямс рассказывает, как предложение Temporal прошло от идеи до Stage 4, заменив устаревший Date API, унаследованный от Java в 1995 году. В статье описаны иммутабельные объекты, явная поддержка часовых поясов и наносекундная точность, а также temporal_rs — общая библиотека на Rust, позволяющая нескольким движкам использовать одну реализацию. #ecmascript #temporal
https://bloomberg.github.io/js-blog/post/temporal/
https://bloomberg.github.io/js-blog/post/temporal/
🔥50👍11🎉6
Неожиданные кастомные селекты. Патрик Броссет создаёт три креативные демки с новым кастомизируемым элементом
https://css-tricks.com/abusing-customizable-selects/
<select>: изогнутую стопку папок с CSS-трансформациями и sibling-index(), веер игральных карт с anchor positioning и круговой эмодзи-пикер на тригонометрических функциях CSS. Все демки сохраняют доступность и адекватно деградируют в неподдерживающих браузерах. #css #htmlhttps://css-tricks.com/abusing-customizable-selects/
🔥17👍7❤5