Хром 112 бета

Вложение CSS, композиция анимации и параметр отправителя для конструктора FormData.

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

CSS

CSS-вложение

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

Свойство CSS animation-composition

Свойство animation-composition позволяет указать составную операцию, которая будет использоваться, когда несколько анимаций одновременно влияют на одно и то же свойство. Посмотрите пример в этой демонстрации .

Веб-API

Информационная панель «Перезагрузить эту страницу» больше не отображается, если фрейм верхнего уровня наблюдает за изменениями разрешений.

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

Добавьте необязательный параметр отправителя в конструктор FormData .

Позволяет передать кнопку отправки конструктору FormData . Если кнопка имеет имя или является кнопкой изображения, она будет участвовать в наборе данных формы. Это позволяет создать объект FormData с тем же набором данных, что и при отправке стандартной формы, инициируемой кнопкой.

Флаг RegExp v с заданными обозначениями и свойствами строк

Добавляйте операции над множествами, строковые литералы, вложенные классы и свойства строк Юникода в классы символов регулярных выражений. Операции установки и свойства строк Юникода позволяют разработчикам легко создавать регулярные выражения, соответствующие строкам с определенными символами Юникода.

Например: /[\p{Script_Extensions=Greek}&&\p{Letter}]/v соответствует всем греческим буквам.

Обновлен алгоритм начальной фокусировки <dialog>

Были внесены некоторые изменения в то, какой элемент выбирается для получения фокуса при открытии элемента <dialog> :

  • Сделайте так, чтобы этапы фокусировки диалога смотрели на фокусируемые элементы клавиатуры, а не на какой-либо фокусируемый элемент.
  • Сделайте так, чтобы элемент диалога сам получал фокус, если у него установлен атрибут autofocus.
  • Сделайте так, чтобы сам элемент диалога получал фокус в качестве резервного варианта вместо того, чтобы фокус «сбрасывался» на элемент тела.

Хвостовой вызов WebAssembly

Добавьте в WebAssembly явный хвостовой вызов и коды операций косвенного хвостового вызова.

WebGLContextEvent для веб-работников

Тип WebGLContextEvent был определен в спецификации Khronos WebGL в течение ряда лет, но до недавнего времени не было замечено, что в Blink этот тип не отображается для веб-воркеров.

Большинство приложений просто добавляют прослушиватель событий для типа и не ищут его прототип в глобальной области видимости. Это простое исправление веб-IDL Blink для WebGLContextEvent , но это изменение доступно через Интернет.

Пропустить обработчик бездействующей выборки сервисного работника

Эта функция ускоряет навигацию по страницам с неактивными обработчиками выборки сервисного работника, пропуская их.

На некоторых сайтах есть прослушиватель выборки без операций (без операций) (например, onfetch = () => {} ). Поскольку наличие прослушивателя выборки было одним из требований для прогрессивного веб-приложения (PWA), мы предполагаем, что они сделали это, чтобы их сайт распознавался как PWA. Однако это приводит только к накладным расходам на запуск сервисного работника и выполнение бездействующего прослушивателя, не принося никаких преимуществ, таких как кэширование или автономные возможности, поскольку код ничего не делает.

Чтобы ускорить навигацию по таким страницам, начиная с Chrome 112, мы будем опускать запуск сервис-воркера и отправку прослушивателя из критического пути навигации, если пользовательский агент определяет, что все прослушиватели выборки сервис-воркера являются пустыми.

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

Принимающая кодировка: br (Бротли) при HTTPS-соединении в WebView

Brotli (тип кодирования контента: br ) — это алгоритм сжатия без потерь общего назначения, который обеспечивает более плотное сжатие со степенью сжатия и скоростью, сравнимой с лучшими доступными в настоящее время методами сжатия общего назначения (подробнее см. google/brotli и RFC 7932). подробности).

Хотя тип кодирования содержимого HTTP для Brotli ( Accept-Encoding: br ) поддерживается Chrome с версии 50 , до сих пор он не был включен для WebView. Эта функция будет внедряться поэтапно для обеспечения стабильности и будет доступна для 50% пользователей WebView Beta.

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

В Chrome 112 вы можете принять участие в следующих пробных версиях Origin .

FedCM: API автоматической повторной аутентификации

Последняя версия FedCM включает в себя функцию автоматической повторной аутентификации, которая позволяет автоматически повторно аутентифицировать пользователей, когда они возвращаются после первоначальной аутентификации с помощью FedCM.

В настоящее время после того, как пользователь создал федеративную учетную запись на RP (проверяющей стороне) с IdP (поставщиком удостоверений) через FedCM, при следующем посещении веб-сайта ему необходимо выполнить те же шаги в пользовательском интерфейсе. То есть им необходимо явно подтвердить и повторно аутентифицироваться, чтобы продолжить процесс входа. Поскольку одной из основных целей FedCM является предотвращение скрытого отслеживания, этот пользовательский интерфейс (UX) имеет смысл до того, как пользователь создал федеративную учетную запись, но он становится ненужным и громоздким после того, как пользователь прошел через него один раз. Вот почему Chrome представляет более оптимизированный пользовательский интерфейс, который RP могут выбрать для своих вернувшихся пользователей.

Зарегистрируйтесь для участия в пробной версии автоматической повторной аутентификации FedCM.

Пробная версия устаревания

Метод getStats() RTCPeerConnection больше не будет возвращать объекты статистики, где type == "track" или "stream" . Эта функция удалена в Chrome 112. Включите эту пробную версию, чтобы иметь больше времени для внесения необходимых изменений.

Зарегистрируйтесь для участия в пробной версии устаревшей версии

X-Requested-With в устаревании WebView

Пробная версия источника устаревания поддерживает предварительное включение перекрестного происхождения при вызове служб, которые полагаются на заголовок X-Requested-With . Эта опция доступна в WebView из Chrome 112. Чтобы узнать, как использовать эту функцию, см. инструкции по настройке пробной версии Origin.

Зарегистрируйтесь для участия в пробной версии X-Requested с прекращением поддержки WebView .

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

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

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

Устаревший установщик document.domain

Установщик document.domain позволяет разработчикам ослабить политику одного и того же происхождения, усложняя фундаментальную границу безопасности, которую мы стремимся поддерживать, и ставя препятствия на пути изменений в модели процессов Chromium после появления Spectre. Теперь он доступен через кластеры агентов с ключом Origin.

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

Удалить track и stream объектов статистики из метода getStats() RTCPeerConnection .

Метод getStats() RTCPeerConnection больше не будет возвращать объекты статистики, где type == "track" или "stream" . Не поставляется в Chrome 112 с пробной версией устаревания (перечисленной выше), чтобы расширить доступность этих показателей до Chrome 115.