Firefox 89

В между­народный день защиты детей и первый день первого лета в новом десяти­летии — новейшая версия свободного веб-браузера Firefox 89.

CSS

  • Поддержка указания MIME-типа изображения в функции image-set() с помощью функции type(), указываемой через пробел после функции url(). Благодаря этому можно, например, использовать современный формат AVIF в браузерах с его поддержкой, и более распространённый формат — в менее современных браузерах. Функция image-set() позволяет использовать адаптивную загрузку изображений в CSS и доступна начиная с Firefox 88.
  • Поддержка свойства forced-colors в условиях правил @media. Позволяет проверять, использует ли пользователь режим с принудительно ограниченной цветовой палитрой, как, например, в режиме высокой контрастности в Windows 10. В таком режиме ряд касающихся цвета свойств (color, background-color, scrollbar-color и проч.) принудительно устанавливается в значения браузера по умолчанию, и отключаются CSS-тени (box-shadow, text-shadow). Возможные значения forced-colors — none и active.
  • Поддержка (1, 2) свойств-дескрипторов ascent-override, descent-override и line-gap-override в правилах @font-face. Служат для более тонкого управления вертикальным положением символов в строке и высотой строки. Возможные значения — normal и процентные величины.

JavaScript, DOM

  • Включена по умолчанию поддержка оператора await верхнего уровня (top level). Такой оператор можно использовать вне асинхронной функции при условии его использования внутри модуля.
  • В 64-разрядных версиях Firefox теперь возможно создание объектов ArrayBuffer размером до 8 ГБ. Объекты ArrayBuffer предназначены для хранения двоичных данных фиксированного объёма — массива байтов.
  • Включена по умолчанию поддержка интер­фейса PerformanceEventTiming, являющегося частью Event Timing API и позволяющего измерять скорость обработки событий и реакции на действия пользователя.
  • Содержимым элементов INPUT и TEXTAREA теперь по умолчанию можно манипулировать с помощью метода document.execCommand() с сохранением истории изменений без необходимости использовать такие обходные манёвры, как атрибут contentEditable. Это соответствует поведению других браузеров.
  • Поддержка динамического импорта ES6-модулей в контент-скриптах расширений. Модули поддерживаются в Firefox начиная с версии 60, динамический импорт — с версии 67.

Прочее

  • Элементы форм теперь внешне отличаются от стандартных («родных», native) для конкретной операционной системы. Предполагается ускорение загрузки веб-страниц и решение проблем с отображением веб-страниц, свёрстанных исходя из ошибочных предположений о размерах и оформлении элементов форм.
  • Новый интер­фейс Photon. Одна из отличительных особенностей — кнопки на панели вкладок. Попутно, похоже, устранилась давняя проблема — тихая отмена всех загрузок в приватном окне при закрытии последней вкладки.
  • Новшества в Firefox для macOS:

    • Реализован «эластичный» эффект, наглядно показывающий пользователю, что достигнуто крайнее положение прокрутки страницы. Вероятно, эффект подобен аналогу в ОС Android для мобильных устройств.
    • Реализовано «умное увеличение» (smart zoom), служащее для увеличения блока под указателем мыши двойным прикосновением двумя пальцами к трекпаду или одним пальцем к Magic Mouse.
    • В полно­экранном режиме браузера теперь можно скрыть панели инструментов браузера, как это происходит в Firefox для Windows и Linux.
    • Теперь используются контекстные меню, стандартные («родные», native) для операционной системы, что повышает едино­образие пользовательского интер­фейса и улучшает визуальную интеграцию браузера с ОС.
  • В приватных окнах теперь включается защита «Total Cookie Protection», ограничивающая видимость cookie-записей пределами сайта, при посещении которого они были установлены, и предотвращающая тем самым отслеживание пере­мещения пользователя между сайтами.
  • Вторая, улучшенная версия «умной» блокировки (SmartBlock) отслеживающих сайтов, призванной предотвратить неправильную работу сайтов, на которых используются такие отслеживающие элементы.

См. также