Хром 109 бета

MathML, условный фокус для getDisplayMedia(), частная файловая система Origin на Android и многое другое.

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

CSS

Поддержка автоматического диапазона дескрипторов шрифтов внутри правила @font-face

Переменные шрифты предоставляют пользователям возможность выбирать, насколько тяжелым, наклонным или широким должен быть шрифт, используя дескрипторы font-weight , font-style и font-stretch ' внутри правила @font-face . Рабочая группа CSS добавила для этих дескрипторов новое значение auto , которое теперь является начальным значением. Это значение реализовано в 109, чтобы соответствовать новой спецификации.

CSS lh единица длины

Единица CSS <length> lh эквивалентна вычисленному значению свойства line-height элемента, в котором она используется. Это позволяет присвоить <textarea> высоту, эквивалентную ожидаемому количеству строк текста.

Свойство CSS hyphenate-limit-chars

Свойство hyphenate-limit-chars определяет минимальное количество символов в слове, написанном через дефис. При применении расстановки переносов оптимальное минимальное количество символов в слове до или после дефиса может варьироваться в зависимости от дизайна страницы или языка. Это свойство позволяет более детально контролировать расстановку переносов для улучшения типографики в Интернете. Это также может помочь международным страницам, когда настройки по умолчанию не оптимальны.

Привязка ширины границ, контуров и правил столбцов перед макетом

В настоящее время Blink фиксирует ширину границы во время рисования. Это может привести к видимому зазору в 1 пиксель между границей родительского элемента и фоном дочернего элемента, когда граница округляется вниз во время рисования. Это происходит потому, что привязка ограничивает значение, но макет округляет его в большую сторону, чтобы вычислить положение дочернего элемента (например, ширина границы установлена ​​на 10,75 пикселей, округляется до 10 пикселей во время рисования, но до 11 во время макета). Внеся это изменение, Blink будет вести себя как Gecko и WebKit, что улучшит совместимость.

МатематикаML

Chrome 109 поддерживает MathML Core — язык описания математических обозначений, встраиваемый в HTML и SVG. MathML визуализируется CSS-совместимым способом с помощью OpenType MATH и предоставляется через API-интерфейсы специальных возможностей платформы. Стилизация MathML обеспечивается функциями CSS, в том числе предназначенными для математического макета:

Свойство math-depth . Свойство math-shift . Свойство math-style . math значение для свойства display . math имя font-family Значение math-auto для свойства text-transform .

Интерфейс MathMLElement предоставляет удобный способ манипулирования MathML в сценариях.

Веб-API

Безопасное подтверждение платежа в Android Chrome

Chrome 109 на Android поддерживает безопасное подтверждение платежа (SPC)предлагаемый веб-стандарт , который позволяет клиентам проходить аутентификацию у эмитента кредитной карты, банка или другого поставщика платежных услуг с помощью аутентификатора платформы, который обычно активируется с помощью функции разблокировки экрана устройства, например в качестве датчика отпечатков пальцев. Обычно это происходит во время протокола аутентификации платежей, такого как EMV 3-D Secure или Open Banking . Например, EMV 3-D Secure имеет поддержку SPC в своей спецификации v2.3 . Ранее мы объявили , что SPC был запущен для Google Chrome на macOS и Windows, а также предоставили руководства для разработчиков по регистрации и аутентификации .

Условный фокус

Условный фокус расширяет getDisplayMedia() , добавляя объект CaptureController , который можно передать в качестве параметра. Этот объект предоставляет метод setFocusBehavior() . Вызывая этот метод, приложение может контролировать, находится ли в фокусе захваченная вкладка или окно при запуске захвата или должна ли страница захвата сохранять фокус.

MediaTrackSupportedConstraints.suppressLocalAudioPlayback

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

Код состояния ответа HTTP в API синхронизации ресурсов

Добавляет поле в PerfomanceResourceTiming , чтобы указать состояние ответа HTTP при получении ресурса. Это обеспечивает простой способ определить, не удалось ли загрузить ресурс для разработчиков, использующих API синхронизации ресурсов.

Частная файловая система Origin (OPFS) на Android

Chrome 109 включает часть частной файловой системы Origin (OPFS) API доступа к файловой системе на Android. Сюда входит вся поверхность API доступа к файловой системе, за исключением методов show{OpenFile, SaveFile, Directory}Picker() и интеграции API перетаскивания. Благодаря API доступа к файловой системе в OPFS сайты могут получить доступ к своей частной файловой системе для каждого источника и выполнять операции с файлами через FileSystemSyncAccessHandle с улучшенной производительностью.

Предварительный рендеринг между разными источниками на одном и том же сайте, запускаемый API правил спекуляций

Ранее Chrome запустил предварительный рендеринг того же источника, запускаемый API правил спекуляций. Chrome 109 расширяет охват и позволяет запускать страницы с перекрестным происхождением на одном сайте. Этот предварительный рендеринг будет выполняться с использованием учетных данных и доступа к хранилищу, но такие цели пререндеринга должны будут согласиться с использованием заголовка Supports-Loading-Mode: credentialed-prerender .

Читатели WebTransport BYOB

Поддержка считывателей BYOB (принеси свой собственный буфер) для веб-транспорта, чтобы обеспечить возможность чтения в буфер, предоставленный разработчиком. Считыватели BYOB могут минимизировать копии буфера и уменьшить выделение памяти.

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

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

Назад/вперед кеш NotRestoredReason API

API NotRestoredReason сообщит список причин, по которым страница не обслуживается из BFcache, в древовидной структуре фреймов через API PerformanceNavigationTiming.

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

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

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

Зарегистрируйтесь для предварительных запросов на доступ к частной сети для пробной версии источника подресурсов .

Устаревания и удаления

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

Устаревания

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

Переезды

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

Удалить Event.path

Event.path — это нестандартный API, который возвращает путь к событию, который представляет собой массив объектов, для которых будут вызываться прослушиватели. Только Blink поддерживает это, что вызывает проблемы с веб-совместимостью. Веб-разработчикам следует перейти на эквивалентный стандартный API Event.composedPath() , который возвращает тот же результат.