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 wichtige Ä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
>Entwicklerwerkzeuge
- Die Position von Elementen kann nun innerhalb des Inhalts geändert werden (Firefox-Bug 1139187).
console.clear()wurde implementiert, um die Konsolenausgabe zu leeren (Firefox-Bug 659625).- HTTP-Protokollinspektion zur Web-Konsole hinzugefügt (Firefox-Bug 1211525).
- Ein Firebug-Theme wurde hinzugefügt (Firefox-Bug 1244054).
- Der DOM-Inspektor wurde hinzugefügt (Firefox-Bug 1201475).
- Schriftarten-Inspektor ist wieder standardmäßig aktiviert (Firefox-Bug 1280121).
- Verbesserte Vorschläge für CSS-Eigenschaften (Firefox-Bug 1168246).
- Cookies,
localStorageundsessionStorageEinträge sind über Doppelklick editierbar (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
toggleEreignis wird nun an das<details>Element gesendet, wenn dieses geöffnet oder geschlossen wird (Firefox-Bug 1225412).
-
Die
metaAttribute 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 nun auf derline-heightEigenschaft 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> Prozentspuren werden jetzt als
autobehandelt, wenn die Größe des Grid-Containers unbestimmt ist (Firefox-Bug 1264607). <fieldset>unterstützt jetzt Grid- und Flex-Layouts (Firefox-Bug 1230207).
-
Der
luminanceWert fürmask-modewurde hinzugefügt; derautoWert wurde inmatch-sourceumbenannt, um der Spezifikation zu entsprechen (Firefox-Bug 1228354). -
Interpolation von
clip-pathGrundformen 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
allWert dertext-combine-uprightEigenschaft hinzugefügt (Firefox-Bug 1097499). -
Unterstützung für die experimentelle
color-adjustEigenschaft wurde hinzugefügt, um Seiten zu ermöglichen zu spezifizieren, dass Hintergrundfarben und -bilder gedruckt werden (Firefox-Bug 1209273). -
Das
::first-letterPseudo-Element stimmt jetzt auch mit Interpunktionszeichen des Typs Pd überein, die dem eigentlichen ersten Buchstaben vorausgehen oder unmittelbar folgen; dies ist eine neue Anforderung des CSS-Pseudo-Element-Moduls Level 4 (Firefox-Bug 1260366). -
Mehrere
-webkitpräfixierte Eigenschaften und Werte wurden für die Web-Kompatibilität hinter der Präferenzlayout.css.prefixes.webkithinzugefügt, wobei der Standardwertfalseist:-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 voninline-flexauf derdisplayEigenschaft. (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 diedisplayEigenschaft als Aliase für die unpräfixierten Werte (Firefox-Bug 1274096).- Hinzugefügt wurden
-webkit-box-flex,-webkit-box-ordinal-group,-webkit-box-alignund-webkit-box-packEigenschaften und-webkit-boxWert zudisplayals Aliase für moderne CSS Flexbox (Firefox-Bug 1208635).
-
Der
textWert vonbackground-clipist jetzt in allen Arten von Firefox verfügbar (und nicht nur in Nicht-Veröffentlichungs-Builds) (Firefox-Bug 1263516). -
Der
absoluteWert derpositionEigenschaften auf dem obersten Schichtelement (Firefox-Bug 1236828). -
Hinzugefügt wurde eine rein interne Syntax für
@supports, um Präfferenzen 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.isConcatSpreadableSymbol wurde implementiert (Firefox-Bug 1041586). - Der ES2015
Array[Symbol.species]Getter wurde implementiert (Firefox-Bug 1165052). - Der ES2015
ArrayBuffer[Symbol.species]Getter undTypedArray[Symbol.species]Getter wurden implementiert (Firefox-Bug 1165053). - Die
Intl.getCanonicalLocales()Methode des ECMAScript Internationalization API-Entwurfs wurde implementiert (Firefox-Bug 1263040).
Veraltungen und Entfernungen
- Die veraltete alte Proxy-API (
Proxy.createundProxy.createFunction()) wurde entfernt. Verwenden Sie stattdessen das Standard-Proxy-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 standardisierte
RegExp.multilineEigenschaft (nichtRegExp.prototype.multiline) wurde entfernt. Verwenden Sie stattdessen das Standard-m-Flag (Firefox-Bug 1219757). - Die
Object.prototype.__defineGetter__()undObject.prototype.__defineSetter__()Methoden können nicht mehr im globalen Bereich ohne ein Objekt aufgerufen werden. (Firefox-Bug 1253016).
Interfaces/APIs/DOM
DOM & HTML DOM
- Der "Moz"-Präfix wurde von den
CSSKeyframeRuleundCSSKeyframesRuleSchnittstellen entfernt (Firefox-Bug 1256178). - Der
NavigatorConcurrentHardwareMixin wurde implementiert, der dieNavigator.hardwareConcurrencyEigenschaft zurNavigatorSchnittstelle hinzufügt. Dies ermöglicht es Websites und Apps, eine zumindest ungefähre Anzahl verfügbarer Verarbeitungskerne zum Ausführen vonWorkers zu ermitteln (Firefox-Bug 1008453). - Die
Node.isSameNode()Methode, die in Firefox 10 entfernt wurde, ist nach einer langen Abwesenheit wieder in der Spezifikation (Firefox-Bug 1256299). - Firefox gibt nun ordnungsgemäße Ausnahmen anstelle von Zahlen zurück, wenn etwas während eines Aufrufs von
Navigator.registerProtocolHandler()schiefgeht. Element.animate()ist nun 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 zu denElementundAttrAPIs verschoben (Firefox-Bug 1055776).- Laut der neuesten Spezifikation wurden die Werte von
KeyboardEvent.codefür folgende Tasten geändert siehe (Firefox-Bug 1264150):"OSLeft"und"OSRight"sind nun"MetaLeft"und"MetaRight"."VolumeDown","VolumeUp"und"VolumeMute"sind nun"AudioVolumeDown","AudioVolumeUp"und"AudioVolumeMute"."IntlHash"wurde entfernt.- Alle Tasten, deren
codeWerte in früheren Firefox-Versionen als "" angegeben wurden, werden nun als "Unidentified" berichtet.
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
iceRestartEintrag wird nun imRTCOfferOptionsCodewörterbuch unterstützt, dascreateOffer()ermöglicht, um ICE-Neustarts anzufordern (Firefox-Bug 906986). - Die
RTCPeerConnection.createOffer()Methode bevorzugt jetzt standardmäßig den VP9-Video-Codec; vorher war VP8 bevorzugt (Firefox-Bug 1242324). - WebM/VP8-Video, das Videoauflösungsänderungen enthält, das mit
MediaRecorderaufgezeichnet wurde, kann nun erfolgreich wiedergegeben werden.
Andere
- Die Web Crypto API ist nun in Web Workern verfügbar (Firefox-Bug 842818).
- Die
CustomEventSchnittstelle ist nun in Web Workern verfügbar (Firefox-Bug 1003432). - Die
DOMApplicationsManager.getNotInstalled()Methode wurde entfernt (Firefox-Bug 1255036). - Mehrere Firefox OS APIs, die fälschlicherweise dem Web ausgesetzt waren, wurden nun wie vorgesehen versteckt —
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
TextEncoderentfernt (Firefox-Bug 1257877). RTCStatsReportist nun eine echtemaplikeSchnittstelle: zusätzlich zuforEach(),get(), undhas(), wurden die Methodenentries(),values(),keys(), sowie dersizeGetter implementiert (Firefox-Bug 906986).- Die
Request.cacheEigenschaft wurde hinzugefügt, um das Cache-Verhalten zu steuern (Firefox-Bug 1120715). - Die Handhabung von Totaste auf Mac OS X wurde so geändert, dass sie wie auf anderen Plattformen funktioniert; sie lösen nun kein
keypressEreignis mehr aus, wenn kein Text generiert wird, wenn das fokussierte Element nicht bearbeitbar ist (wenn das fokussierte Element bearbeitbar ist, verursacht die Totaste stattdessen Kompositionsereignisse anstelle von Tastendruckereignissen auf Mac OS X). Auch hier ist der Wert vonKeyboardEvent.keyjetzt"Dead"für Totastendrücke, die keinen Text in anderen Situationen generieren.
HTTP
- Unterstützung für den
Upgrade-Insecure-RequestsHeader wurde hinzugefügt (Firefox-Bug 1243586). - Die
block-all-mixed-contentCSP Direktive wurde implementiert (Firefox-Bug 1122236).
Änderungen für Add-on und Mozilla-Entwickler
- Die Social Worker API wurde entfernt.
- Die
-moz-bool-pref()CSS@supportsFunktion wurde hinzugefügt, um das Verstecken von Teilen der Chrome-Stylesheets hinter booleschen Präferenzen zu ermöglichen. (Firefox-Bug 1259889)