Хром 131 бета

Опубликовано: 16 октября 2024 г.

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

CSS

В этом релизе добавлены восемь новых функций CSS.

CSS-позиционирование якоря: anchor-scope

Свойство anchor-scope позволяет ограничить видимость имен якорей определенным поддеревом.

CSS font-variant-emoji

Свойство CSS font-variant-emoji позволяет управлять отображением эмодзи в цвете (в стиле эмодзи) и монохромном (в стиле текста). Это также можно сделать, добавив селектор вариантов эмодзи, а именно `U+FE0E` для текста и `U+FE0F` для эмодзи, после каждого кодового значения эмодзи.

Наследование подсветки CSS

При использовании наследования в CSS-подсветке псевдоклассы подсветки, такие как ::selection и ::highlight , наследуют свои свойства через цепочку псевдоклассов подсветки, а не через цепочку элементов. В результате получается более интуитивно понятная модель наследования свойств в подсветке.

Чтобы узнать больше, прочитайте статью в блоге «Изменения в наследовании стилей выделения CSS», написанную Стивеном Ченни из Igalia.

Улучшена структура оформления элементов <details> и <summary> .

Добавлена ​​поддержка CSS-стилей для структуры элементов <details> и <summary> , что позволит использовать эти элементы в большем количестве случаев, когда в веб-среде создаются виджеты раскрытия или виджеты аккордеона. В частности, это изменение снимает ограничения, препятствовавшие установке свойства display для этих элементов, и добавляет псевдоэлемент ::details-content для стилизации контейнера для той части, которая разворачивается и сворачивается.

@page поля страницы

Добавить поддержку полей страницы при печати веб-документа или его экспорте в формат PDF.

Элементы @page margin позволяют определять содержимое в области полей страницы, например, для размещения пользовательских заголовков и нижних колонтитулов вместо использования встроенных заголовков и нижних колонтитулов, генерируемых браузером.

Поле отступа определяется с помощью правила `@page` внутри правила CSS @page . Внешний вид и содержимое поля отступа задаются свойствами CSS внутри правила `@page`, включая свойство ` content . Также поддерживаются счетчики для нумерации страниц. Спецификация определяет два специальных имени счетчика: page для текущего номера страницы и pages для общего количества страниц.

@property поддержка синтаксиса <string>

Поддержка имени компонента синтаксиса <string> для зарегистрированных пользовательских свойств.

Поддержка текущего цвета в синтаксисе относительных цветов.

Разрешите использование относительных цветов в CSS (с помощью ключевого слова ` from ), чтобы в качестве базового значения использовался currentcolor . Это позволит вам задавать дополнительные цвета, основанные на цвете текста элемента, для его границ, теней или фона.

Эта функция также включает в себя сценарии использования, где цветовые функции вложены друг в друга и зависят от currentcolor, например color-mix(in srgb, rgb(from currentcolor rgb), white)) или rgb(from rgb(from currentcolor 1 gb) bgr) .

Поддержка внешних SVG-ресурсов для свойств clip-path , fill , stroke и marker-*

Эта функция добавляет поддержку внешних ссылок на пути к файлам, маркеры и серверы отрисовки (для свойств 'fill' и 'stroke'). Например, clip-path: url("resources.svg#myPath") .

Веб-API

API прямых сокетов

Позволяет изолированным веб-приложениям устанавливать прямую связь по протоколу TCP и протоколу UDP с сетевыми устройствами и системами, а также принимать и обрабатывать входящие соединения.

Исключить заголовок Speculation-Rules из ограничений CSP.

Внесены изменения в интеграцию правил спекуляции и CSP, так что CSP применяется только к <script type=speculationrules> , а не к заголовку Speculation-Rules . Политика CSP в отношении скриптов предназначена для защиты от внедрения скриптов в HTML, а модель угроз CSP не связана с HTTP-заголовками. Это упрощает развертывание правил спекуляции с CDN и других граничных серверов.

FedCM как сигнал доверия для API доступа к хранилищу.

Обеспечивает согласование API FedCM и доступа к хранилищу, делая ранее предоставленное разрешение FedCM уважительной причиной для автоматического одобрения запроса на доступ к хранилищу.

Когда пользователь предоставляет разрешение на использование своих идентификационных данных сторонним поставщиком идентификационных данных (IdP) у зависимой стороны (RP), многие IdP требуют наличия сторонних файлов cookie для корректной и безопасной работы. Данное предложение направлено на удовлетворение этого требования конфиденциальным и безопасным способом путем обновления проверок разрешений API доступа к хранилищу (SAA) таким образом, чтобы они принимали не только разрешение, предоставленное запросом на доступ к хранилищу, но и разрешение, предоставленное запросом FedCM.

Ключевым свойством этого механизма является ограничение предоставления доступа случаями, явно разрешенными RP в соответствии с политикой разрешений FedCM, обеспечение контроля за каждым кадром для RP и предотвращение пассивного наблюдения со стороны IdP за пределами возможностей, которые уже предоставляет FedCM.

Значение COOP noopener-allow-popups

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

В таких случаях может быть полезно, чтобы документ не мог использовать скрипты, даже если открывающий документ находится в том же источнике. Значение параметра noopener-allow-popups Cross-Origin-Opener-Policy позволяет документам определять такое поведение.

API частной агрегации: увеличен лимит вклада до 100 для пользователей с защищенной аудиторией.

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

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

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

Выберите релаксацию парсера

Это изменение позволяет HTML-парсеру разрешать использование дополнительных тегов в <select> помимо <option> , <optgroup> и <hr> .

Это изменение предназначено для поддержки настраиваемой функции <select> , но оно внедряется в первую очередь, поскольку это можно сделать отдельно, и сопряжено с некоторыми рисками несовместимости, по которым команда Chrome хотела бы получить отзывы.

WebGPU: Расстояние отсечения

Добавляет дополнительную функцию GPU clip-distances , позволяющую задавать определяемые пользователем расстояния отсечения в выходных данных вершинного шейдера. Этот метод особенно полезен для приложений, которым необходимо отсечь все вершины в сцене, находящиеся за пределами заданной пользователем плоскости, например, для многих приложений САПР.

WebGPU: GPUCanvasContext getConfiguration()

После вызова GPUCanvasContext configure() с заданным словарем конфигурации, вы можете использовать метод GPUCanvasContext getConfiguration() для проверки конфигурации контекста холста. Он включает в себя члены GPU device , format , usage , viewFormats , colorSpace , toneMapping и alphaMode . Как обсуждалось в проблеме 4828 , веб-приложения могут использовать его для определения того, поддерживается ли HDR-холст в WebGPU.

WebHID на выделенных рабочих станциях

Включает WebHID внутри выделенных рабочих контекстов. Это позволяет выполнять интенсивные операции ввода-вывода и обработки данных с HID-устройства в отдельном потоке, что помогает снизить влияние на производительность основного потока.

WebRTC RTCRtpEncodingParameters.scaleResolutionDownTo

API, который настраивает кодировщики WebRTC для масштабирования входных кадров, если они превышают указанные maxWidth и maxHeight . Этот API аналогичен scaleResolutionDownBy за исключением того, что ограничения разрешения выражаются в абсолютных значениях (например, 640x360), а не в относительных (например, уменьшение в 2 раза), что позволяет избежать состояний гонки, связанных с изменением размера входного кадра на лету.

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

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

Статистика воспроизведения для WebAudio

Функция AudioContext.playoutStats позволяет приложению измерять качество и задержку воспроизведения звука с помощью WebAudio.

API сумматора

JavaScript API для создания кратких обзоров входного текста, основанный на языковой модели искусственного интеллекта.

Амортизация и удаление

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

В этой версии Chrome удалены три функции.

Удалите свойство CSS Anchor Positioning inset-area

В соответствии с решением рабочей группы CSS о переименовании свойства inset-area в position-area , это удаление упрощает реализацию в Chromium и обеспечивает соответствие стандарту.

Удалите возможность отключения BeforeunloadEventCancelByPreventDefault

Функция BeforeunloadEventCancelByPreventDefault была включена в Chrome 117, но существует корпоративная политика, позволяющая принудительно отключать этот флаг. Корпоративная политика будет удалена в Chrome 131.

Удалить нестандартный метод requestAdapterInfo() для GPUAdapter.

Рабочая группа WebGPU решила, что запрашивать разрешение с помощью функции requestAdapterInfo() нецелесообразно, поэтому они удалили эту опцию и заменили ее атрибутом GPUAdapter info , чтобы веб-разработчики могли получать одно и то же значение GPUAdapterInfo синхронно.