Firefox 59 для разработчиков
Эта статья содержит информацию об изменениях в Firefox 59, которые затронут разработчиков. Firefox 59 был выпущен 13 марта 2018 года.
Изменения для веб-разработчиков
Инструменты для разработчиков
- The Network Monitor Response tab now shows a preview of the rendered HTML — if the response is HTML (баг 1353319).
- Cookie information shown in the Storage Inspector (see Cookies) now includes a sameSite column showing what the same-site status of each cookie is (баг 1298370).
- The Rulers tool now includes a readout showing the current dimensions of the viewport (баг 1402633).
- In Responsive Design Mode, you can now set the screen dimensions using the cursor keys (баг 1421663). See the Setting screen size section for more details.
- The Raw headers display in the Network Monitor Headers tab now includes the response's status code (баг 1419401).
HTML
The <textarea> (en-US) element's autocomplete
(en-US) attribute has been implemented. This lets you enable or disable form auto-fill for the element.
CSS
- The
overscroll-behavior
property and its associated longhand properties —overscroll-behavior-x
(en-US) andoverscroll-behavior-y
(en-US) — have been implemented (баг 951793), and it has been enabled by default on all releases (баг 1428879). - The behavior of "unusual elements" (elements that aren’t rendered purely by CSS box concepts such as replaced elements) when given a
display
value ofcontents
has been updated as per spec (баг 1427292). See Appendix B: Effects of display: contents on Unusual Elements for exactly what the specced behaviors are. position
sticky
is now supported on appropriate HTML table parts (e.g. <th> (en-US) elements) (баг 975644).calc()
is now supported in<color>
values —rgb()
,rgba()
,hsl()
, andhsla()
(баг 984021).calc()
in media query values is now supported баг 1396057.- The
@document
at-rule has been limited to use only in user and UA sheets (баг 1035091). - Implement the
font-optical-sizing
(en-US) property (баг 1435692).
SVG
Нет изменений.
JavaScript
Нет изменений.
APIs
New APIs
PointerEvents
(en-US) have been enabled in Firefox Desktop (баг 1411467).
DOM
- The
EventTarget()
constructor has been implemented (баг 1379688). - The
Response()
constructor can now accept anull
value for itsbody
parameter, as per spec (баг 1303025).
DOM events
The Event.composedPath()
(en-US) method has been implemented (баг 1412775).
Service workers
- The service worker Clients API can now find and communicate with windows in a separate browser process (баг 1293277) .
- Nested about:blank and about:srcdoc iframes will now inherit their parent's controlling service worker. Fixed in (баг 1293277) and (баг 1426979).
- When a service worker provides a
Response
toFetchEvent.respondWith()
(en-US), theResponse.url
(en-US) value will not be propagated to the intercepted network request as the final resolved URL. In the past theFetchEvent.request.url
(en-US) was used for this instead. This means, for example, if a service worker intercepts a stylesheet or worker script, then the providedResponse.url
will be used to resolve any relative@import
(en-US) orimportScripts()
subresource loads (баг 1222008). FetchEvent.respondWith()
will now trigger a network error if theFetchEvent.request.mode
is"same-origin"
and the providedResponse.type
(en-US) is"cors"
. (баг 1222008)
Media and WebRTC
- The
MediaStreamTrack
propertyMediaStreamTrack.muted
(en-US), along with the eventsmute
andunmute
and the corresponding event handlers,onmute
(en-US) andonunmute
(en-US), have been implemented. A track'smuted
state indicates that the track is not currently able to provide media data.Note: Themuted
state of a track isn't useful for what's typically thought of as muting and unmuting a track. Instead, use theenabled
(en-US) property; settingenabled
tofalse
causes the track to output only empty frames. - The
RTCRtpReceiver
(en-US) methodsgetContributingSources()
(en-US) andgetSynchronizationSources()
(en-US) have been implemented to provide information about the sources of each RTP stream. However, a specification change occurred before release and we have disabled these by default behind the preferencemedia.peerconnection.rtpsourcesapi.enable
(баг 1363667, баг 1430213, and баг 1433236. - The
RTCRtpTransceiver
(en-US) interface has now been implemented, since the Firefox implementation of WebRTC now supports transceivers, withRTCPeerConnection
and other interfaces updated to use them per the latest specification. - The
RTCPeerConnection.addTransceiver()
(en-US) method has been added. In addition, the behavior ofaddTrack()
(en-US) has been updated to create a transceiver as required. - Support for WebVTT regions was implemented in Firefox 58 but disabled by default. They're now available by default (баг 1415805).
- Firefox now supports WebVTT
REGION
definition blocks whose settings list has one setting per line instead of all of the settings being on the same line of the WebVTT file (баг 1415821.
Canvas and WebGL
No changes.
CSSOM
The CSSNamespaceRule
(en-US) interface and its namespaceURL
and prefix
properties have been implemented (баг 1326514).
HTTP
No changes.
Security
- Top-level navigation to
data:
URIs has been blocked баг 1401895. See Blocking Top-Level Navigations to data URLs for Firefox 59 for more details. - The
SAMEORIGIN
directive of the X-Frame-Options (en-US) header has been changed so that it checks not only the top-level IFrame is in the same origin, but all its ancestors as well (баг 725490). - Image resources loaded from different origins to the current document are no longer able to trigger HTTP authentication dialogs (баг 1423146). See HTTP auth dialog can no longer be triggered by cross-origin images for more details.
- HTTP authentication now uses
utf-8
encoding for usernames and passwords (rather thanISO-8859-1
) for parity with other browsers, and to avoid potential problems as described in баг 1419658. - Everyday the HSTS preload list is updated from Google. Normally this doesn't warrant a note, but in this release new TLDs were included, notably
.app
and.dev
. While they are new TLDs developers might have used them for local development and be surprised by this change. Note that reserved TLDs should be used for local development instead.
Plugins
No changes.
Other
No changes.
Удаления из веб-платформы
HTML
Нестандартный параметр version
атрибута свойства type
элемента <script>
(например, type="application/javascript;version=1.8"
) был удалён (баг 1428745).
CSS
- Проприетарная единица
mozmm
<length>
была удалена (баг 1416564). - Проприетарные свойства
-moz-border-top-colors
,-moz-border-right-colors
,-moz-border-bottom-colors
и-moz-border-left-colors
have been limited to usage in chrome code only (баг 1417200).
JavaScript
- Нестандартные условные блоки catch были удалены (баг 1228841).
APIs
- Нестандартный метод
Event.getPreventDefault()
был удалён. Вам стоит использовать свойствоEvent.defaultPrevented
чтобы определять, вызывался лиpreventDefault()
на событииEvent
. - Проприетарное свойство
Navigator.mozNotification
и интерфейсDesktopNotification
были удалены, в пользу стандартного Notifications API (баг 952453). - Проприетарный метод
window.external.addSearchEngine()
был удалён (баг 862147). Смотреть такжеWindow.sidebar
(en-US) для больших подробностей. - Нестандартное поддерживающиеся только Firefox свойство
HTMLMediaElement
mozAutoplayEnabled
было удалено.
SVG
Поддержка для свойства SMIL accessKey
была удалена (баг 1423098).
Other
Поддержка для нестандартных протоколов pcast:
и feed:
была удалена (баг 1420622).
Changes for add-on and Mozilla developers
WebExtensions
- Theme updates:
- new properties:
colors.background_tab_text
,colors.toolbar_field_border
- all color properties now support both Chrome-style arrays and CSS color values.
- new properties:
- New browser settings:
- New
tabs
APIs: - The
contextMenus
API now supports a "bookmark" context. - New
contentScripts
API enables runtime registration of content scripts. - New
pageAction
,browserAction
,SidebarAction
APIs:browserAction/pageAction/sidebarAction.set*
functions now acceptnull
to undo changes.browserAction.isEnabled()
,pageAction.isShown()
,sidebarAction.isOpen()
functions.
- New option in
page_action
to show page actions by default. - New values for
protocol_handers
:- "ssb" for Secure Scuttlebutt communications
- "dat" for DATproject
- "ipfs", "ipns", "dweb" for IPFS
- New
privacy.websites
setting "cookieConfig". - Support in
cookies
API for first-party isolation. - New option
upgradeToSecure
inwebRequest
.
Смотреть также
Старые версии
- Firefox 58 для разработчиков
- Firefox 57 для разработчиков (en-US)
- Firefox 56 для разработчиков (en-US)
- Firefox 55 для разработчиков (en-US)
- Firefox 54 для разработчиков (en-US)
- Firefox 53 для разработчиков
- Firefox 52 для разработчиков (en-US)
- Firefox 51 для разработчиков
- Firefox 50 для разработчиков
- Firefox 49 для разработчиков (en-US)
- Firefox 48 для разработчиков (en-US)
- Firefox 47 для разработчиков
- Firefox 46 для разработчиков (en-US)
- Firefox 45 для разработчиков
- Firefox 44 для разработчиков
- Firefox 43 для разработчиков
- Firefox 42 для разработчиков (en-US)
- Firefox 41 для разработчиков (en-US)
- Firefox 40 для разработчиков (en-US)
- Firefox 39 для разработчиков (en-US)
- Firefox 38 для разработчиков (en-US)
- Firefox 37 для разработчиков (en-US)
- Firefox 36 для разработчиков (en-US)
- Firefox 35 для разработчиков (en-US)
- Firefox 34 для разработчиков (en-US)
- Firefox 33 для разработчиков
- Firefox 32 для разработчиков
- Firefox 31 для разработчиков
- Firefox 30 для разработчиков (en-US)
- Firefox 29 для разработчиков
- Firefox 28 для разработчиков