Firefox 101
- Опубликовано:
31 мая — в преддверии лета и на следующий день после 42-летия вашего покорного слуги — первый выпуск веб-браузера Firefox во второй сотне версий. А в день 20-летия защиты диплома — традиционный русскоязычный обзор. 🙂
CSS
-
Поддержка
свойства
prefers-contrast
в медиаусловиях (Media Queries). Позволяет определить, повышенную (more
) или пониженную (less
) контрастность пользователь выбрал как предпочтительную для веб-контента. Особое значениеcustom
означает, что пользователь задал собственную цветовую палитру, контрастность которой невозможно однозначно отнести к повышенной или пониженной. -
Поддержка
трёх новых логических размеров видимой части страницы (viewport):
малый (
s
), большой (l
) и динамический (d
). Этим размерам соответствуют ситуации, когда динамически отображаемые элементы интерфейса браузера отображаются, скрыты или отображаются динамически, соответственно. Функциональность используется с помощью новых процентных единиц измерения, зависящих от размера видимой части страницы:svh
,lvh
,dvh
,svw
,lvw
,dvw
,svmax
,lvmax
,dvmax
,svmin
,lvmin
,dvmin
, добавленных в дополнение к существовавшим более общим аналогичным единицамvh
,vw
,vmax
,vmin
. Кроме того, теперь поддерживаются процентные единицыvb
иvi
, которые зависят от размера содержащего элемент блока по осям блоков (block axis) и строки (inline axis) соответственно.
JavaScript, DOM
-
Поддержка
свойства
HTML
без префиксаMedia Element .preserves Pitch moz
. Нестандартное свойствоmoz
теперь является псевдонимом стандартногоPreserves Pitch preserves
, но не рекомендуется к использованию, т. к. его поддержку в дальнейшем могут удалить. Свойство управляет сохранением высоты тона при изменении скорости воспроизведения, задаваемой свойствомPitch HTML
.Media Element .playback Rate -
Поддержка
метода
HTML
, позволяющего отобразить диалог выбора цвета для определённого элементаInput Element. show Picker() INPUT
в результате действия пользователя в отношении другого элемента, например, кнопки. -
Поддержка
сериализации объектов
DOMException
, благодаря чему можно создавать их копии с помощью методаstructured
или копировать между worker-скриптами с помощью методаClone() post
.Message() -
Поддержка
конструируемых таблиц стилей (Constructable Stylesheets),
призванных значительно упростить создание повторно используемых таблиц стилей
в Shadow DOM.
Новая функциональность включает в себя конструктор
CSSStyleSheet()
для создания новых таблиц стилей и методыreplace()
иreplace
для добавления CSS-правил в них.Sync() -
Поддержка
синтаксического разбора (парсинга) параметров
видеокодека AV1 в медиаусловиях проверки поддержки функциональности.
Методы
Media
,Capabilities. decoding Info() HTML
иMedia Element. can Play Type() Media
теперь возвращают точные данные о поддержке воспроизведения видео в формате AV1 согласно заданным параметрам кодека. МетодSource. isType Supported() Media
также использует эту информацию для предоставления точной информации об эффективном декодировании (efficient decoding) видеороликов AV1. Формат AV1 поддерживается начиная с Firefox 65.Capabilities. decoding Info()
Разработка расширений
-
Поддержка
единого программного интерфейса (API)
scripting
для исполнения JS-сценариев, вставки и удаления CSS-стилей и управления регистрацией контент-скриптов. API призван заменить ранее доступные раздельные API для исполнения скриптов и вставки/удаления CSS средствами tabs
API. APIscripting
доступен в Firefox 101 для расширений, использующих новую, третью версию манифеста (Manifest V3), а начиная с Firefox 102 планируется сделать его доступным для использования в расширениях на основе манифеста предыдущей, второй версии. -
Поддержка нового
action
API, призванного функционально заменитьbrowserAction
API в расширениях на основе Manifest V3. Параллельно добавлен соответствующий ключ манифестаaction
. При этомbrowserAction
API и ключ манифестаbrowser_
доступны только в расширениях на основе Manifest V2.action -
Свойство
persistent
в ключе манифестаbackground
можно установить в значениеfalse
на странице скрытых настроекabout:
: с помощью параметраconfig extensions
для расширений на основе Manifest V2, и.eventPages .enabled extensions
— для расширений на основе Manifest V3. Значение.manifestV3 .enabled false
означает, что в состоянии простоя браузер может выгрузить background-страницу, и данные могут быть утеряны. Установка в значениеtrue
в расширениях на основе Manifest V3 невозможна, для хранения данных следует использовать storage API. -
Поддержка ключа манифеста
host_
для расширений на основе Manifest V3. Ключ служит для запроса доступа к API, позволяющим читать или изменять специфичные для домена данные, в том числеpermissions cookies
,webRequest
иtabs
. -
Изменения в отношении исполнения контент-скриптов в расширениях на основе Manifest V3:
- Контент-скрипты больше не могут отправлять междоменные запросы (cross-origin requests) исходя из разрешений для домена (host permissions). Теперь следует использовать CORS.
-
Удалён объект
content
, предоставлявший функциональностьcontent
,.fetch content
и.XMLHttpRequest content
..WebSocket
-
Поддержка
события
storage
для отслеживания изменений содержимого хранилищ.Storage Area .onChanged local
иsync
.
Прочее
- Теперь можно назначить действие, осуществляемое после скачивания файлов определённых MIME-типов.
- Возможность использовать несколько микрофонов одновременно при видеосвязи и свободно переключаться между ними.
-
Новый параметр
print.
вprefer_ system_ dialog about:
позволяет включить использование системного диалога печати вместо собственного диалога Firefox.config -
Новый параметр командной строки
--disable-pinch
позволяет отключить масштабирование пальцами (pinch zooming) при работе Firefox в режиме киоска.