Firefox 48 Versionshinweise für Entwickler
Um die neuesten Entwicklerfunktionen von Firefox zu testen, installieren Sie die Firefox Developer Edition. Firefox 48 wurde am 2. August 2016 veröffentlicht. Dieser Artikel listet die wichtigsten Änderungen auf, die nicht nur für Webentwickler, sondern auch für Firefox- und Gecko-Entwickler sowie Add-on-Entwickler nützlich sind.
Änderungen für Webentwickler
>Entwicklertools
- Die Position von Elementen kann jetzt innerhalb des Inhalts geändert werden (Firefox-Bug 1139187).
console.clear()wurde implementiert, um die Konsolenausgabe zu löschen (Firefox-Bug 659625).- Hinzugefügt: HTTP-Log-Inspektion zur Webkonsole (Firefox-Bug 1211525).
- Hinzugefügt: Firebug-Theme (Firefox-Bug 1244054).
- Hinzugefügt: DOM-Inspektor (Firefox-Bug 1201475).
- Der Schriftinspektor ist standardmäßig wieder aktiviert (Firefox-Bug 1280121).
- Verbesserte Vorschläge für CSS-Eigenschaften (Firefox-Bug 1168246).
- Einträge in Cookies, localStorage und sessionStorage können durch Doppelklick bearbeitet werden (Firefox-Bug 1231154, Firefox-Bug 1231179, Firefox-Bug 1231155).
HTML
-
Die
<details>- und<summary>-Elemente wurden standardmäßig in Nightly und Aurora (DevTools) aktiviert, jedoch nicht in Beta oder Release:- Der Standardstil für diese Elemente wurde angepasst, um der Spezifikation zu entsprechen (Firefox-Bug 1258657).
- Das
toggle-Event wird jetzt an das<details>-Element gesendet, wenn dieses geöffnet oder geschlossen wird (Firefox-Bug 1225412).
-
Die
meta-Attribute unterstützen jetzt auch die Werteno-referrer-when-downgradeundorigin-when-cross-origin(Firefox-Bug 1178337).
CSS
-
Die
calc()-Funktion wurde verbessert, um näher an der Spezifikation zu sein:calc()wird jetzt für dieline-height-Eigenschaft unterstützt (Firefox-Bug 594933).- Unterstützung für verschachtelte CSS
calc()hinzugefügt (Firefox-Bug 968761).
-
Unsere experimentelle Implementierung von CSS-Grids wurde aktualisiert:
- Fragmentierung für das Grid-Layout wurde implementiert (Firefox-Bug 1144096).
- [css-grid] Prozentuale Spuren werden jetzt als
autobehandelt, wenn die Größe des Grid-Containers undefiniert ist (Firefox-Bug 1264607). <fieldset>unterstützt jetzt Grid- und Flex-Layouts (Firefox-Bug 1230207).
-
Der
luminance-Wert fürmask-modewurde hinzugefügt; derauto-Wert wurde inmatch-sourceumbenannt, um der Spezifikation zu entsprechen (Firefox-Bug 1228354). -
Interpolation von
clip-path-Grundformen in CSS-Animationen und -Übergängen wird jetzt unterstützt (Firefox-Bug 1110460). -
Unterstützung für horizontal-in-vertical (tate-chu-yoko) Text wurde über den
all-Wert dertext-combine-upright-Eigenschaft hinzugefügt (Firefox-Bug 1097499). -
Unterstützung für die experimentelle
color-adjust-Eigenschaft wurde hinzugefügt, die es Seiten ermöglicht, anzugeben, dass Hintergrundfarben und -bilder gedruckt werden sollten (Firefox-Bug 1209273). -
Die
::first-letter-Pseudo-Element passt jetzt auch auf Satzzeichen des Typs Pd, die dem eigentlichen ersten Buchstaben vorangehen oder unmittelbar folgen; dies ist eine neue Anforderung des CSS Pseudo-Element-Moduls Level 4 (Firefox-Bug 1260366). -
Mehrere
-webkit-präfixierte Eigenschaften und Werte wurden zur Web-Kompatibilität hinzugefügt, hinter der Präferenzlayout.css.prefixes.webkit, standardmäßig auffalsegesetzt:-webkit-text-fill-color(Firefox-Bug 1247777).-webkit-text-stroke,-webkit-text-stroke-color,-webkit-text-stroke-width(Firefox-Bug 1248708).-webkit-background-clip(als background-clip) Textwert (Firefox-Bug 759568).-webkit-box-direction,-webkit-box-orient(Firefox-Bug 1262049).- Der Wert
-webkit-inline-boxist jetzt ein Alias fürinline-flexbei derdisplay-Eigenschaft. (Firefox-Bug 1257661). -webkit-flex-direction,-webkit-flex-wrap,-webkit-flex-flow,-webkit-order,-webkit-flex,-webkit-flex-grow,-webkit-flex-shrink,-webkit-flex-basis,-webkit-justify-content,-webkit-align-items,-webkit-align-selfund-webkit-align-contentwurden als Aliase für die unpräfixierten Eigenschaften hinzugefügt, und die Werte-webkit-flexund-webkit-inline-flexfür diedisplay-Eigenschaft als Aliase für die unpräfixierten Werte (Firefox-Bug 1274096).- Hinzugefügt:
-webkit-box-flex,-webkit-box-ordinal-group,-webkit-box-alignund-webkit-box-packEigenschaften und-webkit-boxWert zudisplayals Aliase für das moderne CSS Flexbox (Firefox-Bug 1208635).
-
Der
text-Wert vonbackground-clipist jetzt in allen Firefox-Varianten verfügbar (und nicht nur in Nicht-Release-Builds) (Firefox-Bug 1263516). -
Der
absolute-Wert derposition-Eigenschaften auf dem Top-Layer-Element (Firefox-Bug 1236828). -
Interne Syntax für
@supportshinzugefügt, um Prefs zu erkennen (Firefox-Bug 1259889).
JavaScript
Neue APIs
- Die
String.prototype.padStart()- undString.prototype.padEnd()-Methoden wurden implementiert (Firefox-Bug 1260509). - Die ES2015
Symbol.unscopablesundArray.prototype[Symbol.unscopables]-Eigenschaften wurden implementiert (Firefox-Bug 1054759 und Firefox-Bug 1258163). - Das ES2015-
Symbol.isConcatSpreadable-Symbol wurde implementiert (Firefox-Bug 1041586). - Der ES2015
Array[Symbol.species]-Getter wurde implementiert (Firefox-Bug 1165052). - Der ES2015
ArrayBuffer[Symbol.species]-Getter und derTypedArray[Symbol.species]-Getter wurden implementiert (Firefox-Bug 1165053). - Die
Intl.getCanonicalLocales()-Methode des ECMAScript Internationalization API-Entwurfs wurde implementiert (Firefox-Bug 1263040).
Veraltete Funktionen und Entfernungen
- Die veraltete alte Proxy-API (
Proxy.createundProxy.createFunction()) wurde entfernt. Verwenden Sie stattdessen das standardmäßigeProxy-Objekt (Firefox-Bug 892903). - Die
String.prototype.contains()-Methode wurde entfernt (sie war seit Version 40 veraltet). Verwenden Sie stattdessen dieString.prototype.includes()-Methode (Firefox-Bug 1103588). - Die nicht standardmäßige
RegExp.multiline-Eigenschaft (nichtRegExp.prototype.multiline) wurde entfernt. Verwenden Sie stattdessen das standardmäßige m-Flag (Firefox-Bug 1219757). - Die Methoden
Object.prototype.__defineGetter__()undObject.prototype.__defineSetter__()können nicht mehr im globalen Gültigkeitsbereich ohne ein Objekt aufgerufen werden (Firefox-Bug 1253016).
Schnittstellen/APIs/DOM
DOM & HTML DOM
- Das "Moz"-Präfix von den Schnittstellen
CSSKeyframeRuleundCSSKeyframesRuleentfernt (Firefox-Bug 1256178). - Der
NavigatorConcurrentHardwareMixin wurde implementiert, der dieNavigator.hardwareConcurrency-Eigenschaft zurNavigator-Schnittstelle hinzufügt. Dies ermöglicht es Websites und Apps, zumindest eine Annäherung an die Anzahl der zur Verfügung stehenden Prozessorkerne zu erhalten, umWorkersauszuführen (Firefox-Bug 1008453). - Die
Node.isSameNode()-Methode, die in Firefox 10 entfernt wurde, ist zurückgekehrt, nachdem sie nach langer Abwesenheit wieder in die Spezifikation aufgenommen wurde (Firefox-Bug 1256299). - Firefox gibt jetzt ordnungsgemäße Ausnahmen statt Zahlen zurück, wenn bei einem Aufruf von
Navigator.registerProtocolHandler()etwas schiefgeht. Element.animate()ist jetzt standardmäßig aktiviert (Firefox-Bug 1245000).- Die beiden Methoden
Element.insertAdjacentText()undElement.insertAdjacentElement()wurden implementiert (Firefox-Bug 811259). Document.scrollingElementwurde standardmäßig aktiviert (Firefox-Bug 1265032).Node.localName,Node.namespaceURIundNode.prefixwurden in dieElementundAttrAPIs verschoben (Firefox-Bug 1055776).- Gemäß der neuesten Spezifikation wurden die Werte von
KeyboardEvent.codefür die folgenden Tasten geändert (Firefox-Bug 1264150):"OSLeft"und"OSRight"sind jetzt"MetaLeft"und"MetaRight"."VolumeDown","VolumeUp"und"VolumeMute"sind jetzt"AudioVolumeDown","AudioVolumeUp"und"AudioVolumeMute"."IntlHash"wurde entfernt.- Alle Tasten, deren
code-Werte in früheren Versionen von Firefox als "" gemeldet wurden, werden nun als "Unidentified" gemeldet.
Canvas 2D
- Die
CanvasRenderingContext2D.ellipse()-Methode wurde implementiert (Firefox-Bug 910138).
WebRTC
- Die beiden Methoden
MediaStream.clone()undMediaStreamTrack.clone()wurden implementiert (Firefox-Bug 1208371). - Der
iceRestart-Eintrag wird jetzt imRTCOfferOptions-Code-Wörterbuch unterstützt, sodasscreateOffer()verwendet werden kann, um ICE-Neustarts anzufordern (Firefox-Bug 906986). - Die Methode
RTCPeerConnection.createOffer()bevorzugt jetzt standardmäßig den VP9-Videocodec; zuvor wurde VP8 bevorzugt (Firefox-Bug 1242324). - WebM/VP8-Videos, die mit
MediaRecorderaufgenommen wurden und Videoauflösungsänderungen enthalten, können jetzt erfolgreich wiedergegeben werden.
Weitere
- Die Web Crypto API ist nun in Web Workers verfügbar (Firefox-Bug 842818).
- Das
CustomEvent-Interface ist nun in Web Workers verfügbar (Firefox-Bug 1003432). - Die Methode
DOMApplicationsManager.getNotInstalled()wurde entfernt (Firefox-Bug 1255036). - Mehrere Firefox-OS-APIs, die fälschlicherweise im Web verfügbar waren, wurden jetzt ordnungsgemäß verborgen:
mozContact,MozContactChangeEvent,navigator.mozContacts,MozPowerManager,MozSettingsEvent(siehe Firefox-Bug 1043562, Firefox-Bug 1256414 und Firefox-Bug 1256046). - Unterstützung für UTF-16 wurde aus dem
TextEncoderentfernt (Firefox-Bug 1257877). RTCStatsReportist jetzt eine echtemaplike-Schnittstelle: zusätzlich zuforEach(),get()undhas()wurden die Methodenentries(),values(),keys()sowie dersize-Getter implementiert (Firefox-Bug 906986).- Die
Request.cache-Eigenschaft wurde hinzugefügt, um das Cache-Verhalten zu steuern (Firefox-Bug 1120715). - Die Behandlung von "Dead Keys" auf Mac OS X wurde geändert, um auf allen Plattformen gleich zu funktionieren; sie lösen kein
keypress-Ereignis mehr aus, wenn kein Text generiert wird, wenn das fokussierte Element nicht bearbeitbar ist (wenn das fokussierte Element bearbeitbar ist, verursacht der "Dead Key" stattdessen Kompositionsereignisse anstelle von Tastaturereignissen auf Mac OS X). Auch wie auf anderen Plattformen ist der Wert vonKeyboardEvent.keyjetzt"Dead"für "Dead Key"-Drücke, die in anderen Situationen keinen Text generieren.
HTTP
- Unterstützung für den
Upgrade-Insecure-RequestsHeader wurde hinzugefügt (Firefox-Bug 1243586). - Das
block-all-mixed-contentCSP-Direktiv wurde implementiert (Firefox-Bug 1122236).
Änderungen für Add-on und Mozilla-Entwickler
- Die Social Worker-API wurde entfernt.
- Die
-moz-bool-pref()CSS@supports-Funktion wurde hinzugefügt, um Teile von Chrome-Stilvorlagen hinter booleschen Präferenzen zu verbergen (Firefox-Bug 1259889).