Konndor
Новости · 4 мин чтения ·

Вышел Chrome 156: что перепроверить на ревью и приёмке сайта

Окна браузера с блоками вёрстки в пространстве

20 октября Google перевела Chrome 156 в стабильный канал: версии 156.0.8078.47/.48 для Windows и macOS и 156.0.8078.47 для Linux. В релизе 353 исправления безопасности, из них шесть критических, а для вёрстки появились новые возможности CSS: функция random(), прокрутка по одной оси и новый режим привязки прокрутки. Это следует из официальных заметок к релизу на Chrome Platform Status и из разбора SecurityWeek.

Для тех, кто ревьюит и принимает сайты, сама новость не тревожная: старые страницы ломаться не должны. Но обновление браузера — удобный повод проверить, на какой версии вы смотрите макет и на какой его смотрит клиент. Расхождение «у меня всё ровно, а у заказчика поехало» почти всегда упирается в разные браузеры и разные версии.

Если сайт делает внешняя команда, оговорите это заранее: в каких браузерах и версиях проверяется вёрстка и кто отвечает за регресс после обновлений. Хороший подрядчик по созданию сайтов сам вносит список браузеров в критерии приёмки, а не обсуждает его после запуска.

Что нового в Chrome 156 для вёрстки

Функция random() в CSS. Она возвращает случайное число в заданном диапазоне, например random(0%, 100%). С её помощью можно разбросать декоративные элементы по контейнеру без JavaScript. Для ревью это значит, что одна и та же страница может выглядеть по-разному при каждой загрузке, и скриншот перестаёт быть точным эталоном.

Прокрутка по одной оси. Свойство overflow теперь принимает пары вроде scroll clip: контейнер прокручивается по одной оси и обрезает содержимое по другой. От этого зависит поведение «липких» элементов (position: sticky): шапки таблиц и боковые панели могут прилипать иначе, чем раньше.

Привязка прокрутки к одному элементу. Новое значение pair у scroll-snap-type заставляет контейнер привязываться к одному и тому же элементу сразу по горизонтали и вертикали. Это пригодится в галереях и каруселях.

Стиль для источника навигации. Новый псевдокласс позволяет оформить элемент, с которого началась навигация: ссылку, кнопку или форму. Значит, у интерфейса появляются новые состояния, и их тоже нужно смотреть на ревью.

Кроме того, новые базы IndexedDB теперь хранятся на SQLite вместо LevelDB (существующие данные не трогаются), неудачную загрузку модуля можно повторить новым вызовом import(), а элемент FencedFrame и API window.fence заменены заглушками и в Chrome 157 будут удалены полностью.

Безопасность: 353 исправления

По данным SecurityWeek, из 353 закрытых уязвимостей 6 критических, 61 высокой важности, 197 средней и 89 низкой. Больше всего ошибок работы с памятью: 163 случая повреждения памяти, 125 use-after-free и 17 чтений за пределами буфера. Об эксплуатации этих уязвимостей в реальных атаках Google не сообщает. Но по такому релизу понятно, почему клиенту и команде лучше смотреть сайт в обновлённом браузере, а не в версии полугодовой давности.

Что это значит для ревью и согласования

Фиксируйте окружение в каждой правке. Браузер, версия, ОС и ширина окна должны попадать в комментарий автоматически. Тогда разработчику не придётся переспрашивать, где именно «поехало». Подробнее о хорошей правке мы писали в материале о том, как собирать правки.

Договоритесь об эталоне для «живых» блоков. Если на странице есть random(), анимация или подгрузка данных, обсуждайте не пиксели, а правила: диапазон, отступы, что не должно перекрываться. Иначе одна и та же правка будет приходить по кругу.

Добавьте регресс-проход после обновления браузера. Липкие шапки, карусели и формы — первые кандидаты на проверку. Этот пункт стоит записать в чек-лист приёмки сайта.

Что делать сейчас

Обновите Chrome у себя и попросите обновиться клиента. Пройдите ключевые страницы текущих проектов: шапку и навигацию, таблицы с липкими заголовками, галереи и формы. Найденные расхождения собирайте комментариями прямо на странице, с отметкой версии браузера, чтобы потом их было видно в истории.

Коротко. Chrome 156 добавил случайные значения в CSS и новые режимы прокрутки, а заодно закрыл 353 уязвимости. Сайты от этого не сломаются, но на ревью стоит перепроверить липкие элементы и карусели и всегда фиксировать версию браузера. Konndor прикладывает окружение к каждому комментарию на сайте. Попробуйте бесплатно.