Tablas de compatibilidad y repositorio de datos de compatibilidad con navegadores (BCD)

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2019.

MDN tiene un formato estándar para tablas que ilustran la compatibilidad de tecnologías compartidas en todos los navegadores, como DOM, HTML, CSS, JavaScript, SVG, etc. Para que estos datos estén disponibles en varios proyectos mediante programación, se crea un paquete de Node.js desde el repositorio browser-compat-data y se publica en npm.

Para modificar los datos dentro de estas tablas, la documentación completa junto con los detalles más recientes de las convenciones y los esquemas JSON utilizados para representar los datos se pueden encontrar en la guía de contribución del repositorio, así como la guía de pautas de datos. Si tienes dudas o descubres problemas, te invitamos a pedir ayuda.

Uso de los datos de BCD en páginas MDN

Una vez que se han incluido los datos en el repositorio browser-compat-data, puede comenzar a incluir dinámicamente las tablas de especificación y compatibilidad con los navegadores basadas en esos datos dentro de páginas MDN.

Para comenzar con los datos de BCD en páginas MDN, use la cadena de consulta especificada en el archivo fuente de BCD para los datos relevantes que desea incluir. Por ejemplo:

La consulta de datos de compatibilidad debe especificarse en los metadatos de la página en la clave browser-compat. Por ejemplo, AbortController se agregaría como se muestra a continuación:

md
---
title: AbortController
slug: Web/API/AbortController
page-type: web-api-interface
browser-compat: api.AbortController
---

Las tablas de compatibilidad y especificación correspondientes a la clave se representan automáticamente en lugar de las macros {{Compat}} y {{Specifications}} en el código fuente.

Si se requieren varias tablas de compatibilidad/especificaciones en la misma página, puede especificar el valor de browser-compat como una matriz. Por ejemplo, para la API de mensajería de canal esto se agregaría como se muestra a continuación:

md
---
title: Channel Messaging API
slug: Web/API/Channel_Messaging_API
page-type: web-api-overview
browser-compat:
  - api.MessageChannel
  - api.MessagePort
---

Las llamadas a las macros generan las siguientes tablas (y el correspondiente conjunto de notas):

Ejemplo de tabla de compatibilidad

BCD tables only load in the browser

Ejemplos de tablas de especificaciones

Specification
DOM Standard
# interface-abortcontroller