Firefox 62
- Опубликовано:
В бабье лето — с новейшим Firefox 62.
CSS
- Поддержка свойств
shape-outside
,shape-margin
иshape-image-threshold
из спецификации CSS Shapes Module Level 1. Свойствоshape-outside
позволяет задать невидимую геометрическую фигуру, которая будет обтекаться последующим текстом;shape-margin
— отступ от фигуры;shape-image-threshold
— пороговое значение непрозрачности пикселов изображения, включаемых в обтекаемый контур. Параллельно в средства разработчика добавлен инструмент Shape Path Editor, позволяющий в визуальном режиме изменять параметры существующих фигур, заданных свойствамиshape-outside
илиclip-path
. - Поддержка шрифтов OpenType с переменными характеристиками (OpenType Font Variations) (также известных как изменчивые, или вариативные шрифты, Variable Fonts), упомянутая в примечаниях к выпуску Firefox 62, была реализована в предыдущей версии — Firefox 61.
- Псевдоэлемент
::selection
теперь доступен без префикса-moz-
для единообразия с другими браузерами. Псевдоэлемент позволяет управлять оформлением выделенной части текста с помощью ограниченного набора разрешённых свойств:color
,background-color
,cursor
,caret-color
,outline*
,text-decoration*
,text-emphasis-color
,text-shadow
. - Новая единица
x
— псевдоним единицыdppx
, позволяющей применять стили с помощью правил@media
в зависимости от плотности точек устройства вывода. - На веб-страницах теперь недоступен ряд нестандартных значений свойства
display
, предназначавшихся для применения в XUL-документах:-moz-grid
,-moz-inline-grid
,-moz-grid-group
,-moz-grid-line
,-moz-stack
,-moz-inline-stack
,-moz-deck
,-moz-popup
. По-прежнему поддерживаются-moz-box
и-moz-inline-box
, частично аналогичные соответственно свойствамflex
иinline-flex
из Flexbox. В Nightly- и ранних бета-версиях Firefox 63 планируется отключить поддержку свойств-moz-box
и-moz-inline-box
(параметрlayout.css.xul-box-display-values.content.enabled
вabout:config
) с целью собрать статистику их использования с последующим возможным отключением в одной из следующих стабильных версий. - Изменены значения по умолчанию свойства
browser_style
, управляющего применением веб-стилей по умолчанию и доступностью служебных классов на страницах пользовательского интерфейса расширений:- во всплывающих окнах при нажатии кнопок
page_action
иbrowser_action
значение теперьfalse
; - в боковых панелях (
sidebar_action
) и интерфейсе настроек расширенияoptions_ui
значение теперьtrue
.
- во всплывающих окнах при нажатии кнопок
JavaScript, DOM
- Поддержка методов
flat()
иflatMap()
массивов (объектовArray
). Методflat()
заменяет вложенные массивы хранящимися в них элементами — по умолчанию на один уровень вложенности, но можно задать произвольный. Вызовflat()
также удаляет из массива элементы без значений. Вызов методаflatMap()
эквивалентен последовательному вызовуmap()
иflat()
с глубиной вложенности1
. - Поддержка объекта
import.meta
, содержащего специфичные для контекста данные, доступные внутри модуля. Свойствоurl
этого объекта содержит URL-адрес файла, в котором определён модуль. Поддержка ES-модулей доступна начиная с Firefox 60. - Юникод-символы
U+2028
(LINE SEPARATOR
,LS
) иU+2029
(PARAGRAPH SEPARATOR
,PS
) теперь можно использовать в строковых литералах напрямую, без необходимости экранирования. Благодаря этому устраняется противоречие между спецификациями JSON, где эти символы в строках разрешены, и ECMAScript (ECMA-262), согласно которому ранее требовалось их экранировать. - Программный интерфейс (API) синтеза речи (Speech synthesis) из Web Speech API теперь включён по умолчанию в Android-версии Firefox. В настольных версиях Firefox функциональность доступна начиная с Firefox 49.
- Поддержка свойства
srcElement
как псевдонима стандартного свойстваtarget
объектовEvent
для совместимости со скриптами, ориентированными на браузер Internet Explorer. Свойствоtarget
содержит объект, к которому относится обрабатываемое событие. - Свойство
document.domain
теперь при отсутствии домена (например, в локальных HTML-файлах) возвращает пустую строку вместоnull
. - События
DOMSubtreeModified
иDOMAttrModified
в рамках устаревшего механизма Mutation events теперь не инициируются при изменении атрибутаstyle
средствами CSSOM, что в некоторых случаях приводило к бесконечному циклу и зависанию браузера. Вместо Mutation-событий следует использовать современный механизмMutationObserver
, свободный от этой проблемы.
См. также официальные примечания к выпуску и информацию для разработчиков.