--- title: Funciones experimentales de Firefox slug: Mozilla/Firefox/Experimental_features tags: - Experimental - Firefox - Preferencias - características translation_of: Mozilla/Firefox/Experimental_features ---
{{FirefoxSidebar}}

Para probar nuevas características, Mozilla publica una versión de prueba del navegador Firefox, Firefox Nightly, cada día. Características experimentales, por ejemplo implementaciones de estándares de plataforma Web, están disponibles. Esta página lista características que están en versiones Nightly de Firefox junto con información sobre cómo activarlas, si es necesario. Puedes probar tus sitios Web y aplicaciones antes de que se lancen las características y confirmar que todo seguirá funcionando con las últimas prestaciones de tecnología Web.

Para probar esas características experimentales, necesitas descargar Firefox Nightly o Firefox Developer Edition.

HTML

Característica Firefox Nightly Firefox Developer Edition Firefox Beta Firefox Preferencia
{{HTMLElement("dialog")}}
Elemento dialog incluyendo APIs de DOM para interactuar con este. La implementación de diálogos modales y accesibilidad sigue faltando.
Desactivado
(disponible desde 53)
Desactivado
(disponible desde 53)
--- --- dom.dialog_element.enabled

CSS

Característica Firefox Nightly Firefox Developer Edition Firefox Beta Firefox Preference
Subgrids

Desactivado

(reconocido pero aún no implementado)

Desactivado

(reconocido pero aún no implementado)

Desactivado

(reconocido pero aún no implementado)

Desactivado

(reconocido pero aún no implementado)

layout.css.grid-template-subgrid-value.enabled
Display stray control characters in CSS as hex boxes
This feature renders control characters (Unicode category Cc) other than tab (U+0009), line feed (U+000A), form feed (U+000C), and carriage return (U+000D) as a hexbox when they are not expected.
43 43 No habilitado No habilitado layout.css.control-characters.enabled or layout.css.control-characters.visible
Positioned CSS Masks
A subset of CSS Masks that includes longhand properties of CSS Masks, as well as a change in the shorthand property
51 51 53 No habilitado Controlled by a compile flag (MOZ_ENABLE_MASK_AS_SHORTHAND).

The font-variation-settings property
The {{cssxref("font-variation-settings")}} provides low-level control over OpenType or TrueType font typographic features, by specifying the four letter axis names of the features you want to vary, along with their variation values.

No habilitado
(disponible desde la versión 53)
No habilitado
(disponible desde la versión 53)
No habilitado
(disponible desde la versión 53)
No habilitado
(disponible desde la versión 53)

layout.css.font-variations.enabled
Functions only in Mac OS Sierra (and later).

For the downloadable fonts on axis-praxis, you also need gfx.downloadable_fonts.keep_variation_tables (in Firefox 54 and later)

The touch-action CSS property
The {{cssxref("touch-action")}} CSS property is part of the {{SpecName("Pointer Events")}} specification and allows you to specify how and in what way the user is able to manipulate an object by touch.
50 layout.css.touch_action.enabled

The shape-outside CSS property
The {{cssxref("shape-outside")}} CSS property is part of the {{SpecName("CSS Shapes")}} specification and allows you to specify a float area causing inline contents to wrap around a shape.

Firefox currently implements the <shape-box> values ({{bug(1309467)}}) as well as the circle() ({{bug(1311244)}}), ellipse() ({{bug(1326406)}}), and polygon() ({{bug(1326409)}}) functions. {{cssxref("shape-outside")}} is animatable desde la versión Firefox 57 ({{bug(1289049)}}).

No habilitado
(disponible desde la versión 53)
layout.css.shape-outside.enabled
The shape-image-threshold CSS property
The {{cssxref("shape-imahge-threshold")}} CSS property is part of the {{SpecName("CSS Shapes")}} specification, and allows you to specify the alpha channel threshold used to extract the shape using an image as the value for {{cssxref("shape-outside")}}.
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
layout.css.shape-outside.enabled
La propiedad contain de CSS
La propiedad de CSS {{cssxref("contain")}} es parte de la especificación {{SpecName("CSS Containment")}} y te permite indicar que un elemento y sus contenidos son independientes del resto del documento, permitiendo a  {{Glossary("User agent", "user agents")}} optimizar el renderizado de una página.
No habilitado
(disponible desde la versión 45)
No habilitado
(disponible desde la versión 45)
No habilitado
(disponible desde la versión 45)
No habilitado
(disponible desde la versión 45)
layout.css.contain.enabled

The column-span CSS property
The {{cssxref("column-span")}} CSS property is part of the {{SpecName("CSS3 Multicol")}} specification and allows you to specify how many columns an element spans across.

Firefox currently only parses the property ({{bug(1339298)}}), it's not actually implemented yet ({{bug(616436)}}).

No habilitado
(recognized desde la versión 55, but not implemented yet)
layout.css.column-span.enabled
The frames() timing function
Ver The frames() class of timing-functions para más detalle
Habilitado N/A No habilitado
(disponible desde la versión 55)
No habilitado
(disponible desde la versión 55)
None
The {{cssxref("::slotted")}} pseudo-element
Selects elements when they are inserted into a {{htmlelement("slot")}} in an HTML {{htmlelement("template")}}.
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
dom.webcomponents.customelements.enabled and dom.webcomponents.shadowdom.enabled

JavaScript

See also ECMAScript Next support for implemented features of ECMAScript 2016 and later, that are not experimental and thus available without preferences in Firefox Release.

Feature Firefox Nightly Firefox Developer Edition Firefox Beta Firefox Release Preference
Additions to the ArrayBuffer object
Adds the {{jsxref("ArrayBuffer.transfer()")}} that returns a new ArrayBuffer whose contents have been taken from the oldBuffer's data (spec).
36 No habilitado No habilitado No habilitado None
TypedObject objects (spec) Habilitado No habilitado No habilitado No habilitado None
SIMD (specification and polyfill) Habilitado No habilitado No habilitado No habilitado None
ECMAScript modules
Allows you to use native ECMAScript modules, for example defining modules with <script type="module">, defining fallback scripts with <script nomodule>, and importing code features that have been exported from modules.
59 No habilitado No habilitado No habilitado dom.moduleScripts.enabled
{{jsxref("Array.prototype.flatten()")}} and {{jsxref("Array.prototype.flatMap()")}} Habilitado (59) No habilitado No habilitado No habilitado None

APIs

Canvas & WebGL

Feature Firefox Nightly Firefox Developer Edition Firefox Beta Firefox Release Preference
WEBGL_debug_renderer_info extension
The {{domxref("WEBGL_debug_renderer_info")}} extension allows you to transmit information useful to help debugging problems to the server.
42 42 No habilitado No habilitado webgl.enable-debug-renderer-info
OffscreenCanvas
The {{domxref("OffscreenCanvas")}} interface provides a canvas that can be rendered off screen. It is available in both the window and worker contexts.
No habilitado
(disponible desde la versión 44)
No habilitado
(disponible desde la versión 44)
No habilitado
(disponible desde la versión 44)
No habilitado
(disponible desde la versión 44)
gfx.offscreencanvas.enabled
Hit regions
Whether the mouse coordinates are within a particular area on the canvas is a common problem to solve. The hit region API allows you define an area of your canvas and provides another possibility to expose interactive content on a canvas to accessibility tools.
No habilitado
(disponible desde la versión 30)
No habilitado
(disponible desde la versión 30)
No habilitado
(disponible desde la versión 30)
No habilitado
(disponible desde la versión 30)
canvas.hitregions.enabled
Streams API
Allows JavaScript to programmatically access streams of data received over the network and process them as desired by the developer.
No habilitado
(disponible desde la versión 57)
No habilitado
(disponible desde la versión 57)
No habilitado
(disponible desde la versión 57)
No habilitado
(disponible desde la versión 57)
dom.streams.enabled and javascript.options.streams
Custom elements
Allows the definition and registering of custom elements that can then be used in the document.
Habilitado
(desde la versión 59)
No habilitado
(disponible desde la versión 57)
No habilitado
(disponible desde la versión 57)
No habilitado
(disponible desde la versión 57)
dom.webcomponents.enabled and dom.webcomponents.customelements.enabled
Shadow DOM
Allows a shadow DOM to be attached to any element, inside which markup, style, and scripting can be safely encapsulated.
No habilitado
(disponible desde la versión 58)
No habilitado
(disponible desde la versión 58)
No habilitado
(disponible desde la versión 58)
No habilitado
(disponible desde la versión 58)
dom.webcomponents.enabled and dom.webcomponents.shadowdom.enabled

DOM

Característica Firefox Nightly Firefox Developer Edition Firefox Beta Firefox Release Preference
Gamepad extensions
The Gamepad Extensions provide access to additional functionality such as pose information in the case of WebVR controllers, and haptic actuator control (e.g. controller vibration hardware).
Habilitado Habilitado Habilitado No habilitado dom.gamepad-extensions.enabled
HTMLMediaElement.seekToNextFrame()
Part of an experimentation process around support non-real-time access to media for tasks including filtering, editing, and so forth, the {{domxref("HTMLMediaElement.seekToNextFrame()")}} advances the the current play position to the next frame in the media.
49
(Fundamental update in version 50)
49
(Fundamental update in version 50)
No habilitado No habilitado media.seekToNextFrame.enabled
GeometryUtils.getBoxQuads() ({{bug(917755)}}) 31 31 No habilitado No habilitado layout.css.getBoxQuads.enabled
GeometryUtils.convertPointFromNode(),
GeometryUtils.RectFromNode(), y
GeometryUtils.convertQuadFromNode()
({{bug(918189)}})
31 31 No habilitado No habilitado layout.css.convertFromNode.enabled
Node.rootNode
The {{domxref("Node.rootNode")}} property returns a {{domxref("Node")}} object representing the topmost node in the tree, or the current node if it's the topmost node in the tree.
This feature is kept experimental as its naming poses Web compatibility problems. It will be renamed in the future.
48 48 No habilitado No habilitado dom.node.rootNode.enabled
WebVTT Regions API
WebVTT regions are parts of the video viewport that provide a rendering area for WebVTT cues. The {{domxref("VTTRegion")}} is the interface exposing the WebVTT cues.
This interface is considered to be in flux and isn't therefore activated in any version by default.
No habilitado
(Experimental implementation desde la versión version 30)
No habilitado No habilitado No habilitado media.webvtt.regions.enabled
Support for audio and video tracks
Implementa {{domxref("HTMLMediaElement.audioTracks")}} y {{domxref("HTMLMediaElement.videoTracks")}}.
Firefox no soporta pistas de audio o vídeo múltiples, evitando que los usos más comunes de estas propiedades funcionen correctamente. Es por ello que estas propiedades no están activadas por defecto en ninguna versión.
No habilitado
(Implementación experimental desde la versión 33)
No habilitado No habilitado No habilitado media.track.enabled
Better value for Event.timestamp
The property {{domxref("Event.timestamp")}} is returning a {{domxref("DOMHighResTimeStamp")}}, which is now relative to the Unix epoch.
32 (Windows)
43 (Linux)
32 (Windows)
43 (Linux)
No habilitado No habilitado media.track.enabled
Pointer Events 59 59
(todavía no habilitado en Firefox para Android)
59
(todavía no habilitado en Firefox para Android)
59
(todavía no habilitado en Firefox para Android)
dom.w3c_pointer_events.enabled
Intersection Observer API
The {{domxref("Intersection Observer API")}} allows you to configure a callback that is called whenever one item, called a target, intersects either the device viewport or a specified element called.
No habilitado
(disponible desde la versión 53)
dom.IntersectionObserver.enabled
Web Animations API: KeyframeEffect and KeyframeEffectReadOnly
The {{domxref("KeyframEffectReadOnly()", "KeyframeEffectReadOnly.KeyframeEffectReadOnly()")}} and {{domxref("KeyframeEffect()", "KeyframeEffect.KeyframeEffect()")}} constructors can be used to clone existing {{domxref("KeyframeEffectReadOnly")}} object instances by being given the object to clone as their only parameter (see {{bug(1273784)}}.)
52 52 No habilitado No habilitado None
{{domxref("PromiseRejectionEvent")}} and related features
Providing a way to monitor and more finely control the rejection of Promises.
 
No habilitado
(disponible desde la versión 55)
No habilitado No habilitado No habilitado dom.promise_rejection_events.enabled
Payment Request API
Provides a web API for handling web-based payments.
No habilitado
(disponible desde la versión 55)
No habilitado
(disponible desde la versión 55)
No habilitado
(disponible desde la versión 55)
No habilitado
(disponible desde la versión 55)
dom.payments.request.enabled
Basic Card Payment API
Provides dictionaries that define data structures describing card payment types and payment responses for use in the Payment Request API. See {{domxref("BasicCardRequest")}} and {{domxref("BasicCardResponse")}}.
No habilitado
(disponible desde la versión 56)
No habilitado
(disponible desde la versión 56)
No habilitado
(disponible desde la versión 56)
No habilitado
(disponible desde la versión 56)
dom.payments.request.enabled
Window.content only available to Chrome code
The proprietary {{domxref("Window.content")}} property is now only available to chrome (privileged) code, and not available to the web anymore ({{bug(864845)}}).
Habilitado
(desde la versión 57)
No habilitado No habilitado No habilitado  
Disabling {{domxref("Navigator.registerContentHandler()")}}
This API is associated with a number of issues., and in addition we are the only browser that implements it. We are intending to remove it completely in the future, but for the moment we are disabling it in non-release versions to see if we get any significant web compat reports back.
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
Habilitado dom.registerContentHandler.enabled

WebRTC

Feature Firefox Nightly Firefox Developer Edition Firefox Beta Firefox Release Preference
TCP ICE candidates
ICE candidates that use TCP rather than UDP are considered during ICE negotiation.

No habilitado
41

Habilitado
54

No habilitado
41
No habilitado
41
No habilitado
41
media.peerconnection.ice.tcp

Developer Tools

Feature Firefox Nightly Firefox Developer Edition Firefox Beta Firefox Release Preference
Debugger rewrite in HTML 52 52 No habilitado No habilitado devtools.debugger.new-debugger-frontend
Console rewrite in HTML 52 No habilitado No habilitado No habilitado devtools.webconsole.new-frontend-Habilitado
Experimental Performance tool options
Enables options in the UI for JIT optimizations, memory, etc.
41 No habilitado No habilitado No habilitado devtools.performance.ui.experimental
Layout side panel
The Layout side panel allows to inspect and manage different CSS layout types like CSS Grid Layout.
No habilitado
(disponible desde la versión 52)
No habilitado
(disponible desde la versión 52)
No habilitado
(disponible desde la versión 52)
No habilitado
(disponible desde la versión 52)
devtools.layoutview.enabled

Security

Feature Firefox Nightly Firefox Developer Edition Firefox Beta Firefox Release Preference
TLS 1.3 Habilitado Habilitado No habilitado No habilitado security.tls.version.max to 4
Block plain text requests from Flash plugins on encrypted pages
A pref has been added to treat mixed OBJECT_SUBREQUESTS as active content to mitigate MitM attacks due to plugins loading "risky" content. See {{bug(1190623)}} for more details.
Habilitado
(disponible desde la versión 59)
Habilitado
(disponible desde la versión 59)
Habilitado
(disponible desde la versión 59)
No habilitado security.mixed_content.block_object_subrequest to true
{{domxref("SecurityPolicyViolationEvent")}}, and the securitypolicyviolation event
Allows developers to programmatically respond to CSP violations.
Habilitado
(disponible desde la versión 59)
Habilitado
(disponible desde la versión 59)
Habilitado
(disponible desde la versión 59)
No habilitado security.csp.enable_violation_events

"Insecure connection" icon display for non-HTTPS sites
Firefox 59 has two new preferences, No habilitado by default, which when Habilitado cause a lock with a strike-through to appear in the address bar when a non-HTTPS site is loaded. This work is part of the preparation for moving to a completely HTTPS web, the idea being that in the near future insecure sites will be specially indicated, rather than secure sites.

No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)
No habilitado
(disponible desde la versión 59)

security.insecure_connection_icon.enabled for non-private browsing

security.insecure_connection_icon.pbmode.enabled for private browsing

{{httpheader("Origin")}} header sent for non-CORS requests
To mitigate CSRF attacks, the Origin header should be sent with non-CORS requests unless they are GET or HEAD ({{bug(446344)}}). We currently only send Origin on CORS requests.

No habilitado No habilitado No habilitado No habilitado network.http.sendOriginHeader

Consultar también