Firefox 68
- Опубликовано:
Летний Firefox подкрался неожиданно.
CSS, HTML
- Поддержка свойств из новой спефицикации CSS Scroll Snap, позволяющих управлять привязкой прокрутки страницы к элементам. Новая спецификация пришла на смену устаревшей черновой спецификации CSS Scroll Snap Points, поддерживавшейся начиная с Firefox 39. Новая функциональность включает свойства
scroll-padding
(баг 1373832),scroll-margin
(баг 1373833) иscroll-snap-align
(баг 1373835). Поддержка свойствscroll-snap-coordinate
,scroll-snap-destination
,scroll-snap-type-x
иscroll-snap-type-y
прекращена. Свойствоscroll-snap-type
теперь не стенографическое (shorthand), поэтому объявления видаscroll-snap-type: mandatory
теперь не работают. - Поддержка нестандартного свойства
-webkit-line-clamp
для совместимости с веб-страницами, написанными в расчёте на WebKit-браузеры. Свойство позволяет ограничить высоту элемента определённым количеством строк текста. Работает только в сочетании со свойствомdisplay
, установленным в нестандартное значение-webkit-box
или-webkit-inline-box
, и нестандартным свойством-webkit-box-orient
со значениемvertical
(свойства и значения семейства-webkit-box
соответствуют WebKit-реализации устаревшей версии спецификации Flexbox). Помимо этого, для реального усечения блока требуется объявлениеoverflow: hidden
, иначе результатом будет лишь многоточие в конце последней из строк в пределах указанного количества, а текст будет по-прежнему отображаться в полном объёме. Черновая спецификация «CSS Overflow Module Level 3» предусматривает аналогичное стандартное свойствоline-clamp
, но при этом требует одновременной поддержки варианта с префиксом-webkit
. - Поддержка псевдоэлемента
::marker
, позволяющего управлять внешним видом и анимациями маркеров элементов списков и заголовковSUMMARY
разворачиваемых блоковDETAILS
. - Ключевое слово
currentColor
теперь трактуется как вычисленное значение (computed value).currentColor
позволяет установить в значение, соответствующее текущему значению свойстваcolor
, свойства, по умолчанию его не наследующие. ИспользованиеcurrentColor
в качестве значения свойстваcolor
приводит к установке свойства в его унаследованное значение (inherited value), соответствующее вычисленному значению одноимённого свойства родительского элемента. - Реализация единицы
ch
приведена в соответствие со спецификацией. При отсутствии символа0
в шрифте теперь единица соответствует значению0.5em
. - Поддержка свойства
counter-set
, предназначенного для установки значения CSS-счётчика. - Номера в упорядоченных списках
OL
теперь генерируются с помощью CSS-механизма счётчиков, что позволило исправить ряд ошибок 15-летней давности. - Поддержка псевдоэлемента
::part
, служащего для выборки элементов деревьев Shadow DOM по атрибутуpart
. - Поддержка CSS-трансформаций для SVG-элементов
mask
,marker
,pattern
иclipPath
, не соответствующих отрисовываемым элементам напрямую. - Варианты функций градиентов
linear-gradient()
,radial-gradient()
иrepeating-radial-gradient()
с префиксом-moz-
, поддерживаемые для обратной совместимости, теперь функционально приближены к их стандартным вариантам, что позволило упростить их синтаксический разбор (парсинг). В частности, сложный синтаксис, принимавший одновременно угол и положение, больше не работает, а ключевое свойствоto
больше не является обязательным в префиксированных вариантах функций в параметрах типа<side-or-corner>
. - Возобновлена поддержка атрибута
disabled
элементаLINK
с новым поведением. Для элементовLINK
с атрибутомrel="stylesheet"
атрибутdisabled
теперь предотвращает изначальную загрузку таблицы стилей при загрузке страницы; загрузку таблицы стилей затем можно инициировать вручную изменением значения атрибута наfalse
или удалением атрибута. При этом атрибут не связан с одноимённым JS-свойством. - Прекращена поддержка установки Cookies с помощью
META
-элементов типаhttp-equiv="set-cookie"
.
JavaScript, DOM
- Включена по умолчанию поддержка программного интерфейса (API) Visual Viewport в Firefox для Android. Включение этой функциональности в настольном Firefox планируется в будущих версиях. Visual Viewport API, изначально предложенный компанией Google, даёт ряд полезных возможностей, в том числе позволяя определить «пальцевый» масштаб (pinch zoom) на мобильных устройствах с чувствительным к прикосновениям экраном (touch screen) с помощью свойства
VisualViewport.scale
. Ранее для определения такого масштаба требовались ненадёжные обходные манёвры. - Поддержка специфичных для IE9+ нестандартных свойства
rules
и методовaddRule()
иremoveRule()
объектовCSSStyleSheet
для улучшения совместимости с некоторыми устаревшими веб-страницами. - Новый числовой тип
BigInt
позволяет хранить целые числа более 253. - Поддержка параметра
noreferrer
для блокировки отправки URL-адреса ссылающейся страницы в HTTP-заголовке запросаReferer
при открытии окна методомwindow.open()
. - Метод focus() теперь имеет необязательный параметр-объект, булево свойство
preventScroll
которого указывает, следует ли браузеру прокручивать страницу к элементу, на который устанавливается фокус. - Генерация событий для дополнительных кнопок мыши теперь точнее соответствует спецификации: события щелчка
click
и двойного щелчкаdblclick
для дополнительных кнопок более не генерируются; для отслеживания щелчка на дополнительной кнопке теперь служит событиеauxclick
. - В Firefox для Android событие
resize
более не генерируется при первичной отрисовке страницы, что улучшает совместимость с некоторыми скриптами.
Прочее
- Прекращена поддержка директивы
executionContexts
в HTTP-заголовке ответа сервераClear-Site-Data
ввиду некоторых противоречий описания этой директивы в спецификации и реального процесса веб-навигации. - Новая реализация адресной строки на HTML/CSS вместо XUL.
- Включён графический движок WebRender для пользователей Windows 10 с видеокартами AMD. WebRender использует видеокарту (GPU) вместо центрального процессора (CPU) для части операций отрисовки, что призвано повысить быстродействие.
- Поддержка механизма фонового обновления Windows (Windows Background Intelligent Transfer Service, BITS), позволяющего обновлять Firefox, когда он не запущен.
- При обнаружении ошибки HTTPS, связанной с антивирусным ПО, Firefox теперь пытается автоматически это исправить.
- Для доступа к камере и микрофону (
getUserMedia()
) теперь требуется HTTPS-соединение, в&nbps;противном случае возникает ошибкаNotAllowedError
. - Новая служебная страница, доступная по псевдо-URL-адресу
about:compat
, показывает сайты, к которым автоматически применяются индивидуальные исправления, со ссылками на соответствующие баги и возможностью эти исправления отключить для каждого из сайтов. - На Firefox 68 основана новая корпоративная ESR-версия с увеличенным сроком поддержки.