Пульс веб-платформы 27.08.2026


Статьи, мнения, туториалы

AI/Agents

  • Астероид, который сейчас бьёт по фронтенд-разработке — Нолан Лоусон (PouchDB) пишет неудобный для многих текст: большая часть уважаемых фронтенд-преподавателей (Рашмайер, Алам-Нэйлор, Комоу) либо уходит, либо переключилась на разговоры про AI, а сами «звёзды» — Доуз, Османи, Холли — активно мигрируют в AI-повестку. Автор на своём любимом примере Chrome-трейса с высоким Style cost спрашивает у Claude Sonnet, как это оптимизировать — и получает внятный ответ, который когда-то был его собственным конёком. Вывод: то, что раньше отличало опытного разработчика от новичка, LLM уже умеет, и рынок образовательного контента по платформе это почувствовал первым.

CSS

  • Класс-префикс селектор: .btn-* в спецификации — CSSWG на F2F в Берлине (август 2026) добавила Class Prefix Selector в Selectors Level 5 — идея Леи Веро с 2024 года наконец реализована. Теперь базовые стили для группы классов пишутся одной строкой: .btn-* { padding: 0.5rem 1rem; }, без дублирующих базовых классов и без тяжёлых attribute-селекторов. По бенчмарку автора обычный класс-селектор тянет ~6000 runs/s, а [class*=" btn-"] — всего 328 runs/s, почти 20× медленнее и 3 мс из фрейм-бюджета. Пока это только spec text, но для utility-классов и дизайн-систем это большой выигрышный билет.
  • flex-wrap: balance — выравнивание flex-элементов без медиавыражений — Классическая боль flexbox: при wrap один элемент остаётся сиротой на новой строке, и всем привыкли чинить это медиавыражениями, которые ломаются при смене контента. flex-wrap: balance решает это нативно — уже отрендерено в Chrome 150. Ишад показывает, как на реальном примере (секция с социальными иконками в стиле Buffer) убить рваный перенос без единой media query и хрупких трюков.
  • CSS Navigation Matching — первые дни — Черновые зарисовки новой CSS-фичи: декларативное применение стилей при переходе между двумя конкретными страницами. Вместо JS-обвязки для cross-document view transitions теперь можно описать @location --contact-page { pathname: ("/contact"); } и @location --contact-confirmation { pathname: ("/contact/thanks"); }, плюс URL-паттерны вида url-pattern("/article/:id") для динамических маршрутов. Фича ещё сырая и может поменяться до реализации, но направление — декларативные переходы на чистом CSS — выглядит многообещающе.