Стабильная дата выпуска: 24 июня 2025 г.
Если не указано иное, следующие изменения применяются к стабильной версии Chrome 138 для Android, ChromeOS, Linux, macOS и Windows.
CSS и пользовательский интерфейс
Функции CSS, связанные со знаками: abs()
, sign()
Знаковые функции abs()
и sign()
вычисляют различные функции, связанные со знаком их аргумента.
Функция abs(A)
содержит одно вычисление A и возвращает абсолютное значение A того же типа, что и входные данные: если числовое значение A положительно или равно 0⁺, то снова просто A; в противном случае -1 * A.
Функция sign(A)
содержит одно вычисление A и возвращает -1, если числовое значение A отрицательно, +1, если числовое значение A положительно, 0⁺, если числовое значение A равно 0⁺, и 0⁻, если числовое значение A равно 0⁻. Тип возвращаемого значения — <number>
, соответствующий типу входного вычисления.
MDN Docs:abs() | Отслеживание ошибки #40253181 | Запись ChromeStatus.com | Спецификация
Функциональная нотация прогресса интерполяции: функция CSS progress()
Функциональная нотация progress()
возвращает значение <number>
, представляющее позицию одного вычисления (значение прогресса) между двумя другими вычислениями (начальное значение прогресса и конечное значение прогресса). Функция progress()
является математической функцией.
Ошибка отслеживания #40944203 | Запись ChromeStatus.com | Спецификация
CSS sibling-index()
и sibling-count()
Функции sibling-index()
и sibling-count()
могут использоваться как целые числа в значениях свойств CSS для стилизации элементов на основе их положения среди своих братьев и сестер или общего числа братьев и сестер соответственно. Эти функции могут использоваться напрямую как целые числа, но более интересно внутри выражений calc()
.
Ошибка отслеживания #40282719 | Запись ChromeStatus.com | Спецификация
CSS ключевое слово для stretch
размера
Ключевое слово для свойств размера CSS (например, width
и height
), которое позволяет элементам увеличиваться, чтобы точно заполнить доступное пространство содержащего их блока. Это похоже на '100%', за исключением того, что результирующий размер применяется к полю поля элемента, а не к полю, указанному box-sizing
. Использование этого ключевого слова позволяет элементу сохранять свои поля, оставаясь при этом максимально большим. Версия без префикса -webkit-fill-available
.
Ошибка отслеживания #41253915 | Запись ChromeStatus.com | Спецификация
Переменная CSS env для масштабирования шрифта на уровне ОС
Предоставляет предпочитаемый пользователем масштаб шрифта в CSS. Без этого для страницы непрактично определять, изменил ли пользователь предпочитаемый размер шрифта с помощью настроек операционной системы. Эта переменная среды CSS будет отражать масштаб, выбранный пользователем.
Ошибка отслеживания #397737223 | Запись ChromeStatus.com | Спецификация
Устройства
Веб-сериал через Bluetooth на Android
Эта функция позволяет веб-страницам и веб-приложениям подключаться к последовательным портам через Bluetooth на устройствах Android.
Chrome на Android теперь поддерживает Web Serial API через Bluetooth RFCOMM. Существующие корпоративные политики ( DefaultSerialGuardSetting
, SerialAllowAllPortsForUrls
, SerialAllowUsbDevicesForUrls
, SerialAskForUrls
и SerialBlockedForUrls
) на других платформах включены в состояниях future_on для Android. Все политики, кроме SerialAllowUsbDevicesForUrls
, будут включены после включения функции. SerialAllowUsbDevicesForUrls
будет включен в будущем запуске после того, как Android предоставит поддержку проводных последовательных портов на системном уровне.
Ошибка отслеживания #375245353 | Запись ChromeStatus.com | Спецификация
API перечисления сегментов области просмотра
API сегментов области просмотра позволяет разработчикам адаптировать свой веб-макет для целевых складных устройств. Сегменты области просмотра определяют положение и размеры логически отдельной области области просмотра. Сегменты области просмотра создаются, когда область просмотра разделена одной или несколькими аппаратными функциями (например, сгибом или шарниром между отдельными дисплеями), которые действуют как разделитель; сегменты — это области области просмотра, которые разработчик может рассматривать как логически отдельные.
Отслеживание ошибки #1039050 | Запись ChromeStatus.com | Спецификация
JavaScript
Обновите QuotaExceededError
до производного интерфейса DOMException
Раньше, когда веб-платформа хотела сообщить вам о превышении квоты, она использовала DOMException
с определенным свойством name
, установленным на QuotaExceededError
. Однако это не позволяет переносить дополнительную информацию.
Это предлагает удалить "QuotaExceededError" из списка встроенных имен DOMException
и вместо этого создать имя класса QuotaExceededError
из списка встроенных DOMException
и иметь дополнительные необязательные свойства quota
и requested
. Мы предлагаем все экземпляры спецификаций, которые выдают "QuotaExceededError" DOMException
s, обновить, чтобы вместо этого выдавать QuotaExceededError
s. На данный момент такие спецификации оставят свойства quota
и requested
со значением по умолчанию null
, но со временем они могут обновиться, чтобы включить эти данные, если это полезно для их варианта использования (и не является, например, утечкой конфиденциальности).
Запись ChromeStatus.com | Спецификация
Веб-API
API переводчика
JavaScript API для предоставления возможностей языкового перевода веб-страницам. Браузеры все чаще предлагают своим пользователям языковой перевод. Такие возможности перевода также могут быть полезны веб-разработчикам. Это особенно актуально, когда встроенные возможности перевода браузера не могут помочь. Корпоративная политика ( GenAILocalFoundationalModelSettings
) доступна для отключения загрузки базовой модели, что сделает этот API недоступным.
MDN Docs | Отслеживание ошибки #322229993 | Запись ChromeStatus.com | Спецификация
API детектора языка
API JavaScript для определения языка текста с уровнями достоверности.
Важным дополнением к переводу является определение языка. Это можно объединить с переводом, например, принимая пользовательский ввод на неизвестном языке и переводя его на определенный целевой язык. Сегодня браузеры часто уже имеют возможности определения языка, и мы хотим предложить их веб-разработчикам через JavaScript API, дополняя API перевода. Доступна корпоративная политика ( GenAILocalFoundationalModelSettings
) для отключения загрузки базовой модели, что сделает этот API недоступным.
Документы MDN | Запись на ChromeStatus.com | Спецификация
API сумматора
Summarizer API — это JavaScript API для создания сводок входного текста, подкрепленных языковой моделью ИИ. Все чаще ожидается, что браузеры и операционные системы получат доступ к языковой модели. Предоставляя эту встроенную модель, мы избавляем каждый веб-сайт от необходимости загружать собственную многогигабайтную языковую модель или отправлять входной текст сторонним API. В частности, Summarizer API предоставляет высокоуровневый API для взаимодействия с языковой моделью с целью суммирования входных данных для различных вариантов использования (GitHub) способом, который не зависит от конкретной рассматриваемой языковой модели. Доступна корпоративная политика ( GenAILocalFoundationalModelSettings
) для отключения загрузки базовой модели, что сделает этот API недоступным.
MDN Docs | Отслеживание ошибки #351744634 | Запись ChromeStatus.com | Спецификация
Экранирование <
и >
в атрибутах при сериализации
Экранирование <
и >
в значениях атрибутов при сериализации.
Это снижает риск мутационных XSS-атак, которые происходят, когда значение атрибута интерпретируется как токен начального тега после сериализации и повторного анализа.
Запись ChromeStatus.com | Спецификация
API отчетов о сбоях: is_top_level
и visibility_state
Эта функция добавляет строковые поля is_top_level
и visibility_state
в тело API отчетов о сбоях, которое отправляется в конечную точку отчетов по умолчанию для отчетов о сбоях.
Запись ChromeStatus.com | Спецификация
Запуск события pushsubscriptionchange
при повторной подписке
Запускайте событие pushsubscriptionchange
в Service Worker, когда источнику, для которого push-подписка существовала в прошлом, но была отозвана из-за изменения разрешения (с предоставленного на запрещенное/по умолчанию), повторно предоставляется разрешение на уведомление.
Событие будет запущено с пустыми oldSubscription и newSubscription.
Ошибка отслеживания #407523313 | Запись ChromeStatus.com | Спецификация
Мультимедиа
Добавить поддержку метаданных ориентации видеокадра в WebCodecs
Вводит значения rotation: int
и flip: bool
для различных интерфейсов, связанных с видео, в WebCodecs, чтобы разработчики могли работать с источниками кадров, имеющими ориентацию (например, камеры Android, некоторые носители).
Интерфейс VideoFrame
расширяет возможности создания VideoFrames
с произвольным поворотом и отражением, а также средства доступа к этой информации в объекте VideoFrame.
Объект VideoDecoderConfig
автоматически получает поля вращения и переворота, которые генерируются в декодированных объектах VideoFrame.
Класс VideoEncoder
получает механизмы для передачи информации о повороте и перевороте из encode()
в VideoDecoderConfig
, выдаваемый как часть EncodedVideoChunkMetadata
. Если encode()
вызывается с кадрами с разной ориентацией, будет выдано нефатальное исключение. configure()
можно использовать для сброса разрешенной ориентации.
Ошибка отслеживания #40243431 | Запись ChromeStatus.com | Спецификация
Производительность
Добавьте prefetchCache
и prerenderCache
в заголовок Clear-Site-Data
Два новых значения для заголовка Clear-Site-Data
которые помогут разработчикам очистить кэш предварительной визуализации и предварительной выборки: "prefetchCache"
и "prerenderCache"
.
Ошибка отслеживания #398149359 | Запись ChromeStatus.com | Спецификация
Правила спекуляции: поле target_hint
Это расширяет синтаксис правил предположения, позволяя разработчикам указывать поле target_hint.
Это поле содержит подсказку, указывающую на целевой navigable, где в конечном итоге будет активирована предварительно отрендеренная страница. Например, если в качестве подсказки указано _blank, предварительно отрендеренная страница может быть активирована для navigable, открытого window.open(). Поле не влияет на предварительную выборку.
Спецификация позволяет этому полю принимать любые строки, которые допустимы как имя навигационной цели или ключевое слово в качестве значения, но этот запуск поддерживает только одну из строк "_self"
или "_blank"
. Если подсказка не указана, она обрабатывается так, как если бы было указано "_self"
.
Ошибка отслеживания #40234240 | Запись ChromeStatus.com | Спецификация
Безопасность
Политика целостности для скриптов
Subresource-Integrity (SRI) позволяет разработчикам убедиться, что активы, которые они намереваются загрузить, действительно являются активами, которые они загружают. Но в настоящее время у разработчиков нет способа убедиться, что все их скрипты проверены с использованием SRI.
Заголовок Integrity-Policy
дает разработчикам возможность утверждать, что каждый ресурс определенного типа должен быть проверен на целостность. Если ресурс этого типа попытаются загрузить без метаданных целостности, эта попытка не удастся и вызовет отчет о нарушении.
Запись ChromeStatus.com | Спецификация
Работник сферы услуг
Поддержка ServiceWorker для Speculation Rules Prefetch
Эта функция позволяет ServiceWorker-управляемым предварительным загрузкам, то есть предварительным загрузкам правил спекуляции для URL-адресов, управляемых Service Worker. Ранее предварительная загрузка отменялась при обнаружении контролирующего Service Worker, поэтому последующая навигация к цели предварительной загрузки обслуживалась путем без предварительной загрузки. Эта функция позволит запросу предварительной загрузки проходить через обработчик выборки Service Worker, а ответ с перехватом Service Worker кэшируется в кэше предварительной загрузки, в результате чего последующая навигация обслуживается кэшем предварительной загрузки. Используйте корпоративную политику PrefetchWithServiceWorkerEnabled
для управления этой функцией.
Ошибка отслеживания #40947546 | Запись ChromeStatus.com | Спецификация
Устаревания и удаления
WebGPU: Устаревший атрибут GPUAdapter
isFallbackAdapter
Упраздняет логический атрибут GPUAdapter
isFallbackAdapter
из WebGPU, который является избыточным по сравнению с логическим атрибутом GPUAdapterInfo
isFallbackAdapter
.
Это предстоящее удаление является незначительным критическим изменением, поскольку поддержка резервных адаптеров еще не реализована ни в одном браузере, в результате чего оба атрибута isFallbackAdapter
постоянно возвращают ложное значение.
Отслеживание ошибки #409259074 | Запись ChromeStatus.com | Спецификация
Отменить асинхронное удаление диапазона для расширений Media Source
Стандарт Media Source давно изменился, чтобы запретить неоднозначно определенное поведение, включающее асинхронное удаление диапазонов:
-
SourceBuffer.abort()
больше не прерывает операцииSourceBuffer.remove()
. - Параметр
MediaSource.duration
больше не может обрезать текущий буферизованный медиафайл.
Теперь в обоих случаях будут возникать исключения.
Safari и Firefox уже давно поставляют это поведение, Chromium — последний браузер, оставшийся со старым поведением. Счетчики использования показывают, что около 0,001%-0,005% загрузок страниц сталкиваются с устаревшим поведением. Если сайт сталкивается с этой проблемой, воспроизведение теперь может прерываться.
Использование abort()
для отмены удалений растет, поэтому разумно устранить эту проблему устаревания до того, как появятся более несовместимые варианты использования.
Ошибка отслеживания #40474569 | Запись ChromeStatus.com | Спецификация