Опубликовано: 18 сентября 2024 г.
Если не указано иное, следующие изменения относятся к новейшей версии бета-канала Chrome для Android, ChromeOS, Linux, macOS и Windows. Узнайте больше о функциях, перечисленных здесь, по предоставленным ссылкам или из списка на ChromeStatus.com. Бета-версия Chrome 130 доступна по состоянию на 18 сентября 2024 г. Вы можете загрузить последнюю версию на Google.com для настольных компьютеров или в Google Play Store для Android.
CSS
В этом выпуске добавлены четыре новые функции CSS.
CSS-контейнерные запросы: поиск в плоском дереве
Спецификация запросов контейнера изменена для поиска предков плоского дерева. Это изменение актуально только для теневого DOM, где элемент теперь сможет видеть безымянные контейнеры внутри теневых деревьев, в которые помещен элемент или один из его предков, даже если правило CSS не использует ::part()
или ::slotted()
.
Вложенность CSS: правило вложенных объявлений.
Сохраняет пустые объявления, следующие за вложенным правилом, на своем месте, заключая эти объявления в правила CSSNestedDeclarations
во время синтаксического анализа.
Полная поддержка без префиксов для украшения коробки.
Добавляет поддержку box-decoration-break: clone
как для встроенной фрагментации (строчная компоновка), так и для блочной фрагментации (нумерация страниц для печати и многостолбцов).
Ранее в Chrome для фрагментации блоков поддерживалось только box-decoration-break:slice
(начальное значение), тогда как для встроенной фрагментации также поддерживался box-decoration-break:clone
, но только при использовании префикса -webkit-box-decoration-break
свойство -webkit-box-decoration-break
.
Разрешить больше псевдоэлементов и псевдоклассов после ::part()
Селекторам CSS, использующим псевдоэлемент ::part()
разрешено иметь после них другие псевдоэлементы CSS (кроме ::part()
) и многие типы других псевдоклассов CSS. Комбинаторы по-прежнему не допускаются после ::part()
, а псевдоклассы, зависящие от древовидной структуры, не допускаются.
Раньше Chrome допускал только ограниченный набор псевдоклассов и псевдоэлементов после ::part()
. Это изменение разрешает использование всех псевдоклассов и псевдоэлементов, которые должны быть разрешены. Это означает, что теперь разрешены такие селекторы, как ::part(part-name):enabled
и ::part(part-name)::marker
.
Веб-API
Функция API отчетов по атрибуции (области атрибуции)
Это изменение основано на отзывах специалистов по рекламе и необходимости более детальной фильтрации перед началом процесса атрибуции. Он позволяет вызывающим API указать поле под названием «Области атрибуции», которое будет использоваться для фильтрации перед запуском обычного потока атрибуции. Это позволяет вызывающим API более детально контролировать степень детализации атрибуции и получать правильные отчеты об атрибуции при наличии нескольких разных рекламодателей или кампаний, которые все конвертируются на одном целевом сайте.
Функция API отчетов об атрибуции (улучшение конфиденциальности ключей отладки)
Это изменение помогает устранить потенциальный пробел в конфиденциальности с помощью ключей отладки.
В настоящее время API позволяет указать ключ отладки источника или ключ отладки триггера, если сторонние файлы cookie доступны и могут быть установлены вызывающими API. Если указан ключ отладки источника или триггера, он будет включен в отчет об атрибуции. Это может привести к утечке конфиденциальной информации, если сторонние файлы cookie разрешены только на сайте издателя или рекламодателя, но не на обоих сайтах.
Это изменение устраняет эту проблему, обеспечивая, чтобы ключи отладки источника и ключи отладки триггера включались в отчет об атрибуции только в том случае, если они присутствуют как в источнике, так и в триггере, что будет означать, что сторонние файлы cookie были доступны как на издателе, так и на рекламодателе. сайт. Это изменение будет применяться как к отчетам на уровне событий, так и к агрегированным отчетам.
Транспорт словаря сжатия с общим Brotli и общим Zstandard
Эта функция добавляет поддержку использования назначенных предыдущих ответов в качестве внешнего словаря для кодирования контента и сжатия ответов с помощью Brotli или Zstandard.
Предприятия могут столкнуться с потенциальными проблемами совместимости с сетевой инфраструктурой предприятия, которая перехватывает HTTPS-трафик и чувствительна к неизвестным кодировкам контента. Доступна политика предприятия CompressionDictionaryTransportEnabled
позволяющая отключить функцию транспорта словаря сжатия.
Параллельная плавная scrollIntoView()
Метод scrollIntoView()
с behavior: "smooth"
позволяет разработчикам создавать контейнеры прокрутки, которые прокручиваются до своих потомков с плавной анимацией прокрутки. Эта функция исправляет реализацию API в Chrome, чтобы текущие анимации scrollIntoView
не отменялись несвязанными прокрутками в других контейнерах прокрутки.
Эта функция также исправляет случаи, когда Chrome не может прокрутить до привязки фрагмента страницы из-за конкурирующего элемента scrollIntoView
, который вызывается при загрузке страницы.
Документ «картинка в картинке»: добавлена опция игнорирования кэша границ окна.
Это добавляет новый параметр ( preferInitialWindowPlacement
) в API «картинка в картинке» документа, который, если для него установлено значение true, намекает пользовательскому агенту, что он не должен пытаться повторно использовать позицию или размер предыдущей картинки «картинка в картинке». с этого сайта при открытии этого.
Часто окно документа «картинка в картинке» закрывается и снова открывается несколько раз для одного и того же сайта, например, при перемещении видеоконференции в PiP и обратно. Пользовательский агент может повторно открыть окно PiP в его последнем размере и местоположении, чтобы оно оставалось там, где пользователь последний раз перемещал его, и обеспечивало непрерывность между окнами PiP. Однако если новое окно семантически не связано с предыдущим окном, например, если это новый видеовызов, то разработчик может использовать этот параметр, чтобы подсказать пользовательскому агенту, что это окно лучше открыть в его положении по умолчанию. и размер вместо этого.
Узнайте, как открыть окно в его положении и размере по умолчанию .
Улучшен отчет об ошибках в IndexedDB при ошибках чтения больших значений.
Изменение отчетов для определенных случаев ошибок, о которых ранее сообщалось с DOMException
и сообщением «Не удалось прочитать большое значение IndexedDB».
Chrome теперь будет вызывать исключение DOMException
с именем "NotFoundError"
когда файл, содержащий данные, считываемые IDBRequest, отсутствует на диске, чтобы сайты могли предпринять соответствующие корректирующие действия в случае возникновения неисправимого сбоя. Корректирующие действия могут включать удаление записи из БД, уведомление пользователя или повторную выборку данных с серверов.
Контейнеры прокрутки с возможностью фокусировки на клавиатуре
Эта функция делает скроллеры без фокусируемых дочерних элементов фокусируемыми с помощью клавиатуры по умолчанию.
Это важное улучшение, которое поможет сделать скроллеры и их содержимое более доступными для всех пользователей. Вы можете прочитать больше о его преимуществах в разделе «Скроллеры с фокусировкой на клавиатуре» . Начиная с Chrome 130, скроллеры с фокусировкой на клавиатуре будут включены по умолчанию. Если веб-сайтам нужно время, чтобы адаптироваться к этой новой функции, есть несколько вариантов:
- С помощью скроллеров, фокусируемых на клавиатуре, можно использовать пробную версию отказа от использования этой функции на определенном сайте в течение ограниченного времени. Его можно будет использовать в Chrome 132, заканчивающемся 18 марта 2025 г.
- Для той же цели можно использовать
KeyboardFocusableScrollersEnabled enterprise policy
доступную в Chrome 127.
Службы ставок и аукционов с защищенной аудиторией
API Protected Audience (ранее известный как FLEDGE) — это предложение Privacy Sandbox для обслуживания сценариев использования ремаркетинга и индивидуальной аудитории, разработанное таким образом, чтобы третьи лица не могли отслеживать поведение пользователей на разных сайтах.
Эта функция, Службы назначения ставок и аукционов с защищенной аудиторией, описывает способ, позволяющий выполнять вычисления Защищенной аудитории на облачных серверах в доверенной среде выполнения, а не выполнять локально на устройстве пользователя. Перенос вычислений на облачные серверы может помочь оптимизировать аукцион Защищенной аудитории, высвободить вычислительные циклы и пропускную способность сети для устройства.
Поддержка URL-адресов неспециальной схемы.
Раньше анализатор URL-адресов Chrome не поддерживал неспециальные URL-адреса. Анализатор анализирует неспециальные URL-адреса, как если бы они имели «непрозрачный путь», не соответствующий стандарту URL-адресов. Теперь анализатор URL-адресов Chromium корректно анализирует неспециальные URL-адреса в соответствии со стандартом URL-адресов.
Дополнительную информацию см. на сайте bit.ly/url-non-special .
Строковые встроенные функции JavaScript в WebAssembly
Эта функция предоставляет общие строковые операции JavaScript для импорта в WebAssembly. Это позволяет создавать строки JavaScript и манипулировать ими из WebAssembly без поддержки в WebAssembly. Это по-прежнему обеспечивает такую же производительность, как и поддерживаемые ссылки на строки.
WebGPU: смешивание двух источников
Добавляет дополнительную функцию графического процессора «смешивание двух источников», которая позволяет объединять два вывода фрагментного шейдера в один кадровый буфер. Этот метод особенно полезен для приложений, требующих сложных операций смешивания, например, основанных на режимах смешивания Портера-Даффа. Уменьшая необходимость частого изменения объектов состояния конвейера, смешивание двух источников может повысить производительность и гибкость.
Веб-сериал: connected
атрибут и события соединения RFCOMM
Эта функция добавляет логический атрибут SerialPort.connected
. Атрибут возвращает true
если последовательный порт логически подключен. Для проводных последовательных портов порт считается логически подключенным, если он физически подключен к системе. Для беспроводных последовательных портов порт логически подключен, если устройство, на котором размещен порт, имеет какие-либо открытые соединения с хостом.
Раньше только проводные последовательные порты отправляли события подключения и отключения. Благодаря этой функции последовательные порты Bluetooth RFCOMM будут отправлять эти события, когда порт становится логически подключенным или отключенным.
Эта функция предназначена для того, чтобы приложения могли определять доступность последовательного порта Bluetooth RFCOMM, не открывая его.
Дополнительную информацию см. в обновлениях Bluetooth RFCOMM в веб-сериале .
Испытания происхождения продолжаются
В Chrome 130 вы можете принять участие в следующих новых пробных версиях Origin .
API детектора языка
API JavaScript для определения языка текста с уровнями достоверности.
Форматы аттестации WebAuthn
Поддержка поля attestationFormats
начиная с уровня WebAuthn 3.
WebAuthn уровня 3 поддерживает сайт, выражающий упорядоченное предпочтение форматов аттестации учетных данных в новом поле attestationFormats
. Эта функция обеспечивает поддержку этого на Android, где поставщики ключей доступа могут поддерживать несколько форматов.
Зарегистрируйтесь для участия в пробной версии WebAuthn attestationFormats.
Устаревания и удаления
В этой версии Chrome представлены следующие устаревшие и удаленные функции. Посетите ChromeStatus.com , чтобы просмотреть списки запланированных, текущих и предыдущих удалений.
В этом выпуске Chrome удалена одна функция.
Удалить expectedImprovement
в DelegatedInkTrailPresenter
Атрибут expectedImprovement
сообщает веб-разработчикам, насколько API DelegatedInkTrails улучшит их текущую задержку рукописного ввода. Однако этот атрибут не стоит увеличения энтропии отпечатков пальцев.
В этом выпуске Chrome исключена одна функция.
Устаревший нестандартный метод GPUAdapter requestAdapterInfo()
.
Асинхронный метод requestAdapterInfo()
в WebGPU является избыточным, поскольку разработчики уже могут получать GPUAdapterInfo
синхронно, используя атрибут info
GPUAdapter
.