Поделиться через


Заметки о выпуске веб-платформы Microsoft Edge 135 (апрель 2025 г.)

Ниже приведены новые функции и обновления веб-платформы в Microsoft Edge 135, которая будет выпущена 3 апреля 2025 г.

Чтобы оставаться в актуальном состоянии и получать последние возможности веб-платформы, скачайте версию Microsoft Edge для участников программы предварительной оценки, например Canary, Dev или Beta; См . статью Стать участником программы предварительной оценки Microsoft Edge.

Подробное содержимое:

Средства разработки Edge

См . раздел Новые возможности в средствах разработки Microsoft Edge.

WebView2

См . заметки о выпуске пакета SDK для WebView2.

Функции веб-платформы

Функции CSS

Псевдоэлеминистр ::column CSS представляет отдельные столбцы в контейнере с несколькими столбцами.

Контейнер может быть стилистирован с ограниченным количеством свойств CSS.

Контейнер можно привязать к с помощью прокручиваемого контейнера с помощью ::scroll-marker псевдоэлеективов.

Псевдоэлеминии ::scroll-marker и ::scroll-markers-group позволяют создавать набор маркеров фокусировки в контейнере прокрутки.

Набор маркеров с фокусом используется для привязки контейнера прокрутки к определенным позициям.

Псевдо-элемент ::scroll-button() позволяет создавать кнопки прокрутки в виде псевдоэлеективов контейнера прокрутки.

Кнопки прокрутки используются для прокрутки контейнера в направлении кнопки при нажатии кнопок прокрутки.

Стилизация вложенных псевдоэлеективов

Псевдоэлеимы, вложенные в другие псевдоэлеминии, теперь можно использовать стиль с помощью ::before::marker и ::after::marker.

::column::scroll-marker пока не поддерживается.

Свойство CSS interactivity

Свойство CSS interactivity указывает, являются ли элемент и его потомки плоского дерева (включая текстовые запуски) инертными или нет.

Инертный элемент влияет на:

  • Может ли элемент фокусироваться, изменяться, выбираться и искать с помощью функции "Найти на странице".
  • Отображается ли элемент в дереве специальных возможностей.
Свойства логического переполнения CSS

Свойства overflow-inline CSS и overflow-block позволяют задавать переполнение во встроенном и блочном направлении относительно режима записи.

  • В режиме overflow-inline горизонтальной записи сопоставляется с overflow-x.
  • В режиме overflow-inline вертикальной записи сопоставляется с overflow-y.
CSS abs() и sign() функции

Функция abs(A) возвращает абсолютное значение A, как тот же тип, что и входные данные. Тип возвращаемого <number>значения — .

Функция sign(A) возвращает:

  • -1 Значение , если числовое значение A является отрицательным.
  • +1 Значение , если числовое значение A является положительным.
  • 0 иначе.

Тип возвращаемого <number>значения — .

Размещение привязки CSS: запоминается смещение прокрутки

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

Учет смещения прокрутки при изменении размера элемента позволяет использовать все видимое пространство для привязанного элемента (с помощью position-area) при прокрутке документа с заданным смещением прокрутки.

Чтобы избежать изменения размера элемента при каждой прокрутке документа, используется концепция "запоминаемое смещение прокрутки", а не всегда использовать текущее смещение прокрутки.

Свойство CSS dynamic-range-limit

Свойство dynamic-range-limit CSS позволяет ограничить максимальную яркость содержимого с высоким динамическим диапазоном (HDR).

Функция CSS shape()

Функция shape() CSS позволяет использовать в свойстве фигуры свободной формы и адаптивные clip-path фигуры.

Можно определить ряд глаголов, эквивалентный глаголам path() в функции.

Можно использовать единицы реагирования, например % или vw.

Можно использовать значения CSS, например пользовательские свойства.

Функции CSS progress()

Функции progress(), media-progress()и container-progress() представляют пропорциональное расстояние заданного значения (значения хода выполнения) от одного значения (начального значения хода выполнения) до другого значения (значения конца выполнения).

  • progress() позволяет рисовать коэффициент хода выполнения из математических функций.
  • media-progress() позволяет рисовать соотношение хода выполнения из компонентов мультимедиа.
  • container-progress() позволяет рисовать коэффициент хода выполнения из компонентов контейнера.
safe-area-max-inset-* Переменные

Переменные safe-area-max-inset-topсреды , safe-area-max-inset-right, safe-area-max-inset-bottomи safe-area-max-inset-left привязаны к переменным набора безопасной области, но представляют собой максимально возможную безопасную область.

Использование максимально возможной безопасной области полезно, чтобы избежать обновления макета страницы при росте значения набора безопасной области.

Функции HTML

command и commandfor атрибуты HTML

command Атрибуты и commandfor HTML для <button> элементов позволяют назначать поведение кнопок доступным и декларативным способом, уменьшая частоту использования страницы JavaScript для обеспечения интерактивности.

При нажатии, касании или активации с помощью нажатия клавиши кнопка с commandfor атрибутами и command отправляет CommandEvent элемент , на который ссылается , с некоторыми поведениями commandforпо умолчанию, такими как открытие диалогов и всплывающих окон.

Элемент <link rel="facilitated-payment" href="..."> выступает в качестве подсказки, которую браузер использует для уведомления зарегистрированных платежных клиентов о ожидающих push-платежах.

rel Поддержка атрибутов и relList в элементах SVG <a>

Интерфейс SVGAElement в SVG 2.0 позволяет управлять элементами SVG <a> , которые похожи на элементы привязки HTML. Это изменение добавляет поддержку атрибутов rel и relList для повышения безопасности и конфиденциальности веб-страниц.

Такой подход соответствует принципу работы элементов привязки HTML и обеспечивает согласованность и простоту использования в SVG и HTML.

Веб-API

Добавление поддержки MediaStreamTrack в API веб-службы распознавания речи

API веб-службы "Речь" — это стандартный веб-API, который позволяет включить распознавание речи и синтез в веб-страницы.

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

Чтобы избежать утечек журнала браузера пользователей, элементы HTML <a> теперь имеют вид :visited только в том случае, если они были щелкнуны на сайте верхнего уровня и в источнике кадра ранее. Это означает, что Microsoft Edge теперь секционирует посещенные ссылки в соответствии с тремя ключами:

  • URL-адрес ссылки.
  • Сайт верхнего уровня.
  • Источник кадра.

Благодаря стилю ссылок, которые были нажаты на этом сайте и фрейме ранее, атаки по боковому каналу, которые были разработаны для получения :visited сведений о стиле ссылок, теперь устарели.

Из этого исключены самосвязи; ссылки на собственные страницы сайта можно использовать, :visited даже если они не были нажаты на этом сайте верхнего уровня и источнике фрейма. Это исключение включено только в кадрах верхнего уровня или подфреймах, которые имеют одно и то же происхождение с кадром верхнего уровня.

Создание клиента рабочей роли службы и наследование контроллера рабочей роли службы для iframe с помощью srcdoc

Клиент рабочей роли службы теперь создается для iframes, использующих srcdoc атрибут . Созданный клиент рабочей роли службы наследует от рабочей роли службы родительского элемента iframe.

Отправка событий щелчка в захваченный указатель

Если указатель захватывается во время отправки pointerup события, click событие отправляется в захваченный целевой объект, а не отправляется ближайшему общему предку pointerdown событий и pointerup .

Float16Array

Теперь Float16Array поддерживается типизированный массив. Числовые значения округляются до формата с плавающей запятой половинной точности (IEEE FP16) при записи в Float16Array экземпляр.

Предотвращение отслеживания HSTS

Смягчает отслеживание пользователей сторонними организациями с помощью кэша строгой транспортной безопасности HTTP (HSTS).

Эта функция позволяет обновлять HSTS только для навигаций верхнего уровня и блокирует обновления HSTS для запросов подресурсов. Блокировка такого обновления HSTS делает невозможной использование кэша HSTS сторонними сайтами для отслеживания пользователей в Интернете.

sourceElement свойство для NavigateEvent

Когда навигация по страницам инициируется элементом, например когда пользователь щелкает ссылку или отправляет форму, результат NavigateEvent теперь имеет sourceElement свойство, указывающее на инициирующий элемент.

PerformanceNavigationTiming API NotRestoredReasons: изменение имени

API NotRestoredReasons является частью API PerformanceNavigationTiming. Это изменение обновляет имена причин, чтобы они соответствовали спецификации.

Список изменений:

Старое название Новое название
extension-messaging, pending-permission-request, not-main-frame, frame-navigating, timeout, cookie-disabled, cookie-removed, , printing, web-database, injected-javascriptи injected-stylesheet masked
response-method-not-get request-method-not-get
serviceworker-version-activation serviceworker-version-activated
serviceworker-added-after-bfcache serviceworker-added
serviceworker-unregistration serviceworker-unregistered
unload-handler unload-listener
session-restored null
Наблюдаемый API

Наблюдаемые компоненты — это популярная парадигма реактивного программирования для обработки асинхронного потока событий на основе push-уведомлений. Наблюдаемые объекты можно рассматривать как обещания, но для нескольких событий. Наблюдаемые компоненты позволяют писать более линейный и декларативный код и избегать вложенных обратных вызовов. Таким образом, наблюдаемые объекты обеспечивают эргономичную обработку событий, предоставляя Observable объект, представляющий асинхронный поток событий.

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

См. спецификацию наблюдаемого W3C.

URL-адрес клиента рабочей роли службы теперь игнорирует history.pushState изменения

Свойство Client.url рабочей роли службы, являющееся URL-адресом исходного HTML-документа, теперь игнорирует изменения, внесенные методом history.pushState() и другими аналогичными API журнала.

Метки времени для кадров в кодировке RTC

Теперь доступны следующие метки времени:

  • Метка времени захвата: метка времени, когда кадр был первоначально записан.
  • Получение метки времени: метка времени, когда был получен кадр.

Эти метки времени присутствуют в кадрах в кодировке WebRTC, которые передаются через RTCPeerConnection.

Это изменение позволяет приложениям видеоконференций, которые используют WebRTC для реализации измерений задержки, чтобы лучше понять производительность.

double Используйте тип для атрибутов ProgressEvent loaded и total

Атрибуты loaded и total указывают ProgressEvent текущий ход выполнения. Тип этих атрибутов теперь представляет собой число с плавающей запятой между 0 и 1, которое соответствует ProgressEvent поведению <progress> элемента HTML по умолчанию, если max атрибут опущен.

API fetchLater

fetchLater() — это API JavaScript для отправки отложенного запроса на выборку. После отправки отложенного запроса на выборку отложенный запрос помещается в очередь браузера в состоянии ожидания .

Затем отложенный запрос на получение вызывается самым ранним из следующих условий:

  • При уничтожении документа.
  • По истечении указанного пользователем времени.
  • Когда браузер решит, что пришло время отправить запрос.

API возвращает объект , FetchLaterResult содержащий activated логическое поле. activated Логическое поле можно обновить, чтобы узнать, был ли отправлен отложенный запрос. После успешной отправки отложенного запроса ответ игнорируется браузером, включая текст и заголовки веб-страницы.

highlightsFromPoint API

highlightsFromPoint() API позволяет веб-страницам взаимодействовать с пользовательскими выделенными элементами CSS, определяя, какие выделения существуют в определенной точке документа.

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

  • Реагирование на событие наведении указателя мыши на выделенную область для активации пользовательской подсказки.
  • Если пользователь щелкает выделенную область, чтобы активировать контекстное меню.

Устаревшие и удаленные функции

Нерекомендуйте Intl.Locale методы получения

API Intl.Locale предоставляет такие сведения, как данные недели и тип цикла часов языкового стандарта.

Свойства Intl.Locale метода доступа объекта теперь устарели в пользу соответствующих функций в соответствии со спецификацией. Например, Intl.Locale.prototype.hourCycle свойство метода доступа не рекомендуется использовать в пользу Intl.Locale.prototype.getHourCycles() функции.

Метод Remove navigator.xr.supportsSession

Нерекомендуемое navigator.xr.supportsSession свойство удалено из API WebXR.

В спецификации WebXR в 2019 navigator.xr.supportsSession году свойство было помечено как нерекомендуемое и заменено методом navigator.xr.isSessionSupported() .

Удаление ограничения WebGPU maxInterStageShaderComponents

Теперь maxInterStageShaderComponents ограничение удалено из-за:

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

  • Незначительные расхождения. Хотя существуют незначительные различия в том, как вычисляются два ограничения, эти различия незначительны и могут эффективно управляться в пределах предела maxInterStageShaderVariables .

  • Упрощение. Удаление maxInterStageShaderComponents упрощает интерфейс шейдера и снижает сложность использования интерфейса. Вместо управления двумя отдельными ограничениями (которые применяются одновременно, но с незначительными различиями), можно просто сосредоточиться на более подходящем именованном и комплексном maxInterStageShaderVariables.

Пробные версии источника

Ниже приведены новые экспериментальные API, которые можно попробовать на собственном веб-сайте в течение ограниченного времени.

Дополнительные сведения о пробных версиях источника см. в статье Использование пробных версий источника в Microsoft Edge.

Полный список доступных пробных версий источника см. в статье Пробные версии источника Microsoft Edge.

Пробные версии источника только для Microsoft Edge

API цифровых товаров

Срок действия истекает 31 марта 2025 г.

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

Доступ к локальной папке веб-приложения

Срок действия истекает 31 марта 2025 г.

Web App LocalFolder Access позволяет установленному в Microsoft Store прогрессивному веб-приложению (PWA) получать доступ к содержимому файлов, которое ранее хранилось в папке WinRT ApplicationData.LocalFolder в более ранней версии приложения.

Атрибут рукописного ввода HTML+IDL

Срок действия истекает 14 июня 2025 г.

Атрибут handwriting предоставляет для каждого документа и каждого элемента способ управления тем, где разрешен ввод рукописного ввода, например при использовании пера.

API сведений о приобретении

Срок действия истекает 30 июня 2025 г.

API сведений о приобретении поддерживает атрибуцию приобретения 3P для PWA, которые были приобретены через магазин приложений или непосредственно из браузера.

Примечание.

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой Chromium.org и используемой в соответствии с условиями, описанными в международной лицензии Creative Commons Attribution 4.0.