Хром 107 бета

Дополнения к API захвата экрана, интерполяция свойств шаблона сетки CSS и многое другое.

Если не указано иное, описанные ниже изменения относятся к новейшей версии бета-канала Chrome для Android, ChromeOS, Linux, macOS и Windows. Узнайте больше о функциях, перечисленных здесь, по предоставленным ссылкам или из списка на ChromeStatus.com. Chrome 107 является бета-версией по состоянию на 29 сентября 2022 г. Вы можете загрузить последнюю версию на Google.com для настольных компьютеров или в Google Play Store для Android.

Интерполяция свойств grid-template CSS

В CSS Grid свойства grid-template-columns и grid-template-rows позволяют разработчикам определять имена строк и отслеживать размеры столбцов и строк сетки соответственно. Благодаря нашим сотрудникам из Microsoft мы теперь поддерживаем интерполяцию для этих свойств. Макеты сетки теперь могут плавно переходить между состояниями вместо привязки в середине анимации или перехода.

Элементы управления демонстрацией экрана с сохранением конфиденциальности

API захвата экрана представляет собой дополнение к существующему API захвата мультимедиа и потоков, позволяющее пользователю выбирать экран или часть экрана (например, окно) для захвата в качестве медиапотока. Этот поток затем можно записать или поделиться с другими по сети. В этой бета-версии к этому API добавлены некоторые новые функции.

DisplayMediaStreamConstraints.selfBrowserSurface

Подсказка, позволяющая веб-приложениям сообщать браузеру, следует ли при вызове getDisplayMedia() исключить текущую вкладку из списка вкладок, предлагаемых пользователю.

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

DisplayMediaStreamConstraints.surfaceSwitching

Добавляет возможность программного управления отображением в Chrome кнопки переключения вкладок при совместном использовании экрана. Эта опция будет передана в navigator.mediaDevices.getDisplayMedia() .

Кнопка «Поделиться этой вкладкой вместо этого» позволяет пользователям плавно переключать вкладки, к которым они предоставляют общий доступ, без необходимости снова выбирать вкладку видеоконференции, нажимать кнопку, чтобы снова запустить getDisplayMedia() , или выбирать новую вкладку из длинного списка вкладки. Такое поведение представлено условно, поскольку не все веб-приложения способны справиться с таким поведением.

MediaTrackConstraintSet.displaySurface

При вызове getDisplayMedia() браузер предлагает пользователю выбор поверхности отображения: вкладки, окна или мониторы. Используя ограничение displaySurface, веб-приложение теперь может намекать браузеру, предпочитает ли он, чтобы определенный тип поверхности был более заметным для пользователя.

Узнайте больше о том, как эти функции помогут избежать случайного раскрытия информации.

Статус блокировки рендеринга в Resource Timing

Добавляет поле в PerfomanceResourceTiming , чтобы указать состояние блокировки отрисовки ресурса. В настоящее время с точки зрения разработчика единственный способ определить, какие ресурсы на самом деле блокируются при рендеринге, — это полагаться на сложную эвристику. Вместо этого новое поле будет давать прямой сигнал об этом.

Подстановочные знаки в источниках политики разрешений

Эта функция добавляет поддержку подстановочных знаков в политике разрешений, структурированной как SCHEME://*.HOST:PORT (например, https://*.foo.com/), где действительный источник может быть создан из SCHEME://HOST:PORT (например, https://foo.com/). Для этого требуется, чтобы HOST имел как минимум eTLD+1 (регистрируемый домен). Это означает, что https://*.bar.foo.com/ работает, а https://*.com/ нет. Подстановочные знаки в разделе схемы и порта не будут поддерживаться, а https://*.foo.com/ не делегирует https://foo.com/ . Раньше политика разрешений могла выглядеть так:

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://cdn1.foo.com" "https://cdn2.foo.com")

Благодаря этой функции вы можете использовать:

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://*.foo.com")

Поддержка атрибута rel в элементах <form> .

Эта функция добавляет атрибут rel к элементам формы, что позволяет предотвратить присутствие window.opener на веб-сайтах, на которые переходят элементы формы с rel=noopener , и предотвращает отправку заголовка реферера с rel=noreferrer .

Испытания происхождения

В этом выпуске Chrome было две новые пробные версии Origin .

Декларативный API PendingBeacon

API маяков с отслеживанием состояния, который позволяет браузеру контролировать отправку маяков. Маяк — это пакет данных, отправляемый на внутренний сервер без ожидания конкретного ответа. Часто желательно отправить их в конце посещения пользователем страницы, но сейчас неподходящее время для вызова «отправить». Этот API делегирует отправку самому браузеру, поэтому он может поддерживать маяки при выгрузке или скрытии страницы, без необходимости разработчику реализовывать вызовы отправки в нужное время.

Ожидается, что эта пробная версия будет действовать до версии Chrome 109. Зарегистрируйтесь для участия в пробной версии здесь .

Политика разрешений: выгрузить

Эта функция позволяет страницам отключать запуск обработчиков событий выгрузки. Цель состоит в том, чтобы позволить сайтам, которые удалили все обработчики выгрузки, гарантировать, что они случайно не добавят новые. Это поможет сайтам отказаться от обработчиков событий выгрузки и тем самым повысить частоту попаданий BFCache .

Ожидается, что эта пробная версия будет действовать до версии Chrome 109. Зарегистрируйтесь для участия в пробной версии здесь .

Прекращение поддержки и удаление

В этой версии Chrome представлены устаревшие и удаленные версии, перечисленные ниже. Посетите ChromeStatus.com, чтобы просмотреть списки запланированных, текущих и предыдущих удалений.

В этом выпуске Chrome исключена одна функция.

Ожидайте-CT

Expect-CT — это HTTP-заголовок, который позволяет веб-сайтам включать принудительное применение прозрачности сертификатов до того, как оно будет применено по умолчанию. Он также имеет функцию отчетности, которая помогает разработчикам обнаруживать неправильные конфигурации CT.

HTTP Expect-CT был разработан, чтобы помочь перейти к универсальному обеспечению прозрачности сертификатов (CT), позволяя ценным веб-сайтам соглашаться на применение CT или отправлять отчеты для повышения безопасности до того, как принудительное применение CT потребуется (Chrome) на всех общедоступных веб-сайтах. . Однако Expect-CT уже изжил себя. Chrome теперь требует CT на всех общедоступных веб-сайтах, поэтому Expect-CT больше не имеет значения для безопасности. Ни один другой браузер не реализовал Expect-CT , поэтому его удаление не является проблемой совместимости.