Firefox 35

В Старый Новый год встречаем Деда Мороза юбилейный Firefox 35, предлагающий ряд примечательных новшеств.

CSS, HTML

  • Поддержка фильтров CSS, реализуемых CSS-свойством filter, включена по умолчанию. Теперь, например, есть возможность сделать цветное изображение чёрно-белым исключительно средствами CSS — это можно использовать для реализации популярного эффекта проявления цветного изображения при наведении указателя мыши на его чёрно-белую версию, для чего ранее приходилось подготавливать обе версии изображения.
  • Нестандартное свойство -moz-appearance со значением none, позволяющее удалить любое предопределённое оформление элементов (в том числе элементов форм), теперь удаляет стрелку в правой части элементов SELECT, открывая возможность более тонкого управления внешним видом таких элементов.
  • Поддержка формата шрифтов WOFF2, обеспечивающего более высокую степень сжатия по сравнению с форматом WOFF первого поколения и, соответственно, более быструю загрузку файлов шрифтов.
  • Любопытно: нестандартные устаревшие оформительские атрибуты bottommargin, leftmargin, rightmargin и topmargin HTML-элемента BODY теперь доступны не только в Quirks-режиме, как было ранее, но и в режиме соответствия стандартам.

JavaScript, DOM

  • Поддержка программного интерфейса (API) CSS Font Loading, позволяющего инициировать и отслеживать загрузку шрифтов средствами JavaScript с целью, например, применить разные стили в зависимости от того, доступен ли конкретный шрифт.
  • Поддержка чтения и установки значений CSS-свойств в JavaScript с указанием их непосредственных CSS-имён с дефисами без необходимости в преобразовании в camelCase-форму: element.style["css-property-name"]. Ранее эта возможность была доступна в IE и браузерах на движках WebKit (Safari) и Blink/Chromium (Chrome, Opera 15+).
  • Поддержка объявлений let обновлена в соответствии с текущими требованиями ES6.
  • Поддержка полезного метода Element.closest(), возвращающего ближайший по иерархии родительский элемент, соответствующий заданному селектору. Причём если указанному селектору соответствует сам элемент, для которого метод вызван, возвращается именно этот элемент, а не родительский — возможно, всё же имело смысл сделать это настраиваемым с помощью булева аргумента и по умолчанию не включать сам элемент в список родительских элементов, среди которых осуществляется поиск.
  • Удалена поддержка about:config-параметра network.websocket.enabled, позволявшего отключать Websocket API, который теперь отключить невозможно.

Разработка

  • Поддержка программного интерфейса (API) Resource Timing, призванного облегчить поиск узких мест в быстродействии веб-приложений, включена по умолчанию.
  • Поддержка инспектирования псевдоэлементов ::before и ::after.
  • Новый пункт «Показать свойства DOM» в контекстном меню элемента в инспекторе.

Прочее

  • Обновлена до свежей версии 1.0.907 библиотека PDF.js, используемая во встроенном модуле просмотра PDF-документов, не требующем внешних программных модулей.
  • В Firefox для Mac OS X начиная с версии Snow Leopard (10.6.3) поддержка видеоформата H.264 теперь реализована с использованием встроенного в систему программного пакета Video Decode Acceleration framework, что позволило значительно снизить нагрузку на процессор при воспроизведении сложных видеороликов.
  • Включён по умолчанию сомнительного удобства интерфейс поиска, суть которого состоит в том, что сервис поиска по умолчанию выбирается в настройках браузера, а поиск с помощью произвольного сервиса можно осуществить щелчком по соответствующей нужному сервису пиктограмме-кнопке в выпадающем меню, доступном уже после набора поискового запроса. Как следствие, перестали работать расширения Organize Search Engines (ныне почему-то недоступно) и SearchLoad Options, а поисковое поле пропало из-за несовместимости этих расширений с новым интерфейсом поиска. К счастью, отключить этот «кнопочный» интерфейс при необходимости можно с помощью параметра browser.search.showOneOffButtons на странице скрытых настроек, доступной по псевдо-URL-адресу about:config (обновлено (): начиная с Firefox 43 этот способ больше не срабатывает).

О других новшествах Firefox 35 читайте в официальных примечаниях к выпуску и информации для разработчиков.