Chrome 154 (beta)

Fecha de publicación: 2 de septiembre de 2026

A menos que se indique lo contrario, los siguientes cambios se aplican a la versión más reciente del canal beta de Chrome para Android, ChromeOS, Linux, macOS y Windows. Obtén más información sobre estas funciones con los vínculos proporcionados o visitando ChromeStatus.com. Chrome 154 está en versión beta desde el 2 de septiembre de 2026. Puedes descargar la versión beta más reciente desde Google.com para computadoras o desde Google Play Store en Android.

CSS y IU

Modos scroll-marker-group de CSS

Se mejoró la propiedad scroll-marker-group para admitir los siguientes modos:

  • links: El ::scroll-marker-group generado opera en modo links y funciona como una lista de navegación. Este es el modo predeterminado si se omite.
  • tabs: El ::scroll-marker-group generado opera en modo tabs y funciona como una lista de pestañas.

Cada modo cambia el orden de enfoque y el comportamiento de accesibilidad de ::scroll-marker-group y ::scroll-marker, según los patrones de WAI-ARIA:

  • Modo de vínculos (predeterminado): Imita los puntos de referencia de navegación estándar combinados con anclajes de fragmentos. El ::scroll-marker-group asume el rol navigation, y los elementos ::scroll-marker asumen el rol link. Todos los elementos ::scroll-marker son paradas de tabulación secuenciales. Cuando se activa un marcador de vínculo, el enfoque se mueve al elemento de destino.
  • Modo de pestañas: Replica el patrón de pestañas y sirve como base para los carruseles con pestañas. Al ::scroll-marker-group se le asigna el rol tablist, los elementos ::scroll-marker actúan como roles tab y los elementos de origen obtienen el rol tabpanel. Solo el ::scroll-marker activo actúa como una parada de tabulación, con las teclas de flecha para navegar entre los marcadores. El contenido de las pestañas inactivas está oculto en el árbol de accesibilidad.

text-decoration-inset de CSS

La propiedad text-decoration-inset de CSS controla qué tan lejos se insertan o extienden las decoraciones de subrayado, sobrelineado y tachado más allá de los bordes de la ejecución de texto. Admite valores auto, de longitud y de porcentaje, incluida la sintaxis de uno y dos valores para establecer compensaciones de inicio y finalización. Esto permite a los desarrolladores ajustar el espaciado de la decoración y crear efectos de revelación con decoraciones de texto nativas en lugar de degradados de fondo o elementos adicionales.

text-decoration-skip-spaces de CSS

La propiedad text-decoration-skip-spaces de CSS controla si las líneas de decoración de texto (como subrayados, sobrelineados y tachados) omiten los caracteres de espacio en blanco. Esto te permite evitar que las decoraciones se dibujen debajo de los espacios.

Expone la jerarquía CSSStyleValue a los contextos de Worker

La especificación de CSS Typed OM expone la jerarquía CSSStyleValue a los permisos globales del trabajador ([Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]), pero Blink anteriormente solo exponía CSSStyleValue, CSSKeywordValue, CSSNumericValue, CSSUnitValue, y CSSUnparsedValue a Window y worklets. Como resultado, estos constructores no estaban definidos en los contextos de Worker. Chrome 154 expone estos constructores en los trabajadores, lo que se alinea con la especificación y otros motores de navegador.

Atributo width de FontFace y descriptor font-width

Expone el atributo width en FontFace y el descriptor @font-face font-width como alias para stretch y font-stretch. Esto alinea Chromium con las especificaciones actualizadas de CSS Font Loading y CSS Fonts 4. Puedes inspeccionar o inicializar los anchos de la fuente con FontFace.width y font-width de CSS de forma intercambiable con stretch y font-stretch.

Mejoras de descarte ligero para ventanas emergentes y diálogos

Mejora y simplifica el comportamiento de descarte ligero para ventanas emergentes y diálogos. El descarte ligero es el comportamiento en el que se cierra una ventana emergente o un diálogo cuando se hace clic fuera de ellos. Estas mejoras garantizan que los gestos de desplazamiento en pantallas táctiles y los clics con el botón derecho ya no activen el descarte ligero.

Ahora, el navegador usa eventos click para activar el descarte ligero en lugar de una combinación de eventos pointerdown y pointerup.

De tamaño responsivo <iframe>

Permite que los sitios habiliten iframes con tamaño responsivo. Esto dimensiona el <iframe> elemento en el documento superior al tamaño de desbordamiento del diseño del documento iframe, lo que evita el desplazamiento en el documento secundario.

JavaScript

Iterador includes

Una propuesta de TC39 que agrega un método includes() a los iteradores, lo que te permite verificar si un iterador produce un valor determinado, de manera similar a Array.prototype.includes().

API web

Agrega un paquete de opciones al constructor WebSocket

Agrega compatibilidad para pasar un diccionario de opciones (WebSocketInit) como segundo argumento al WebSocket constructor. El diccionario de opciones admite una opción protocols, lo que te permite especificar subprotocolos (lo que refleja el argumento protocols existente) y sirve como punto de extensión para opciones futuras.

Antes, esto se escribía de la siguiente manera:

const socket = new WebSocket("wss://example.com:8080", "soap");

Con este cambio, también se puede escribir de la siguiente manera:

const socket = new WebSocket("wss://example.com:8080", { protocols: "soap" });

Actualizaciones de algoritmos en WebCrypto

Agrega criptografía poscuántica y un algoritmo AEAD simétrico al conjunto de algoritmos criptográficos disponibles en la API de Web Cryptography. Esto te da acceso a las implementaciones proporcionadas por el navegador de algoritmos criptográficos resistentes a computadoras cuánticas estandarizados por NIST:

  • ML-KEM (768, 1024)
  • ML-DSA (44, 65, 87)
  • ChaCha20-Poly1305
  • Ala-X

Aplicación de CORS para Background Fetch

La API de Background Fetch ahora aplica el uso compartido de recursos entre dominios (CORS).

Esta actualización alinea la implementación de Chromium con la intención de la especificación de Background Fetch. Esto garantiza que las solicitudes de Background Fetch estén sujetas a las mismas políticas de seguridad, como las verificaciones de acceso a la red local, lo que impide que los sitios omitan CORS y otras verificaciones de políticas de seguridad usando Background Fetch en lugar de Fetch normal.

API de Fetch: Reenvía el motivo de AbortController para recuperar Response

Expone el motivo de anulación, si se proporciona, a los métodos del objeto Response y su ReadableStream, en lugar de solo la promesa fetch. Esto alinea Chrome con el estándar, lo que muestra el motivo de anulación proporcionado por el desarrollador en todas partes.

Restricciones de acceso a la red local para Background Fetch

Las solicitudes de Background Fetch requieren que el origen del service worker tenga el permiso de acceso a la red local (LNA) necesario para enviar solicitudes a servidores locales o de bucle invertido.

Esto alinea la implementación de Chromium con la intención de la especificación de Background Fetch, que establece que las solicitudes pasan por la especificación de Fetch y se les aplican las mismas políticas de seguridad. Esto evita que los sitios omitan las verificaciones de LNA usando Background Fetch en lugar de Fetch normal.

En el caso de las empresas, puedes usar las políticas empresariales de LNA existentes de la misma manera que lo harías para las solicitudes normales de la API de Fetch de los service workers:

Métodos de transmisión y de inserción de HTML renovados

Expone varios métodos de configuración de HTML que proporcionan un enfoque coherente para insertar de forma dinámica el lenguaje de marcado en un documento existente:

  • Métodos posicionales (before(), after(), append(), prepend() y replaceWith()) que toman HTML como argumento y reemplazan insertAdjacentHTML().
  • Métodos de transmisión (streamAppendHTML(), streamAppendHTMLUnsafe() y métodos relacionados) que muestran un WritableStream.
  • Pasa {runScripts} como parte de SetHTMLUnsafeOptions, lo que coincide con el comportamiento de createContextualFragment.
  • Admite createParserOptions en Trusted Types, lo que permite que Trusted Types anule el modo de secuencias de comandos y el desinfectante.

Confirmación de pago seguro: Validación de configuración regional

Actualiza el campo de datos locale de la Confirmación de pago seguro para mostrar un DOMException NotSupportedError si ninguna de las etiquetas de idioma proporcionadas en el campo coincide con el idioma que usa el diálogo de Confirmación de pago seguro. Si el campo no está configurado o está vacío, se omite esta validación.

Esto ayuda a hacer coincidir el idioma de los datos proporcionados a la Confirmación de pago seguro con el diálogo.

Admite la opción targetAddressSpace para WebSockets

Agrega compatibilidad para pasar una opción targetAddressSpace en el constructor WebSocket. Esto te permite especificar que una conexión de WebSocket a un nombre de host público debe tratarse como si fuera a un destino "local" o de "bucle invertido", lo que coincide con la compatibilidad existente en la API de Fetch. El caso de uso principal es omitir las restricciones de contenido mixto cuando se conecta a servidores locales que no admiten HTTPS, ya que los permisos de acceso a la red local requieren un contexto seguro.

Por ejemplo, un sitio público que se conecta a un servidor local puede usar un nombre de host en lugar de la configuración manual de la dirección IP privada exacta:

const ws = new WebSocket("ws://local-server.example", { targetAddressSpace: "local" });

Esto marca la conexión de WebSocket como si fuera a una dirección local, lo que omite el bloqueo de contenido mixto cuando se ejecuta en un contexto seguro. El usuario debe otorgar al sitio el permiso de red local para que la conexión de WebSocket se realice correctamente, y el nombre de host debe resolverse en una dirección IP local (de lo contrario, se bloquea).

Esta función se basa en el diccionario de opciones que se agregó al constructor WebSocket.

WebGPU: Profundidad del fragmento WGSL

Agrega la capacidad de proporcionar un modificador less o greater a @builtin(frag_depth) en WGSL.

El uso de @builtin(frag_depth) sin modificadores puede generar una penalización de rendimiento si se inhabilitan las optimizaciones Z tempranas en una llamada de dibujo. Los nuevos modificadores permiten la configuración explícita del modo de búfer, lo que permite que se apliquen las optimizaciones Z tempranas.

API de Window Shape

La API de Window Shape permite que las apps web aisladas incluidas en la lista de entidades permitidas en ChromeOS tengan una forma de ventana personalizada. Si habilitan diseños de ventanas no rectangulares y no contiguos, los desarrolladores pueden implementar experiencias como widgets, paneles flotantes y superposiciones que coincidan con el aspecto de las aplicaciones nativas. El método window.setShape() requiere que la ventana esté en el modo de visualización unframed y que se otorgue el permiso window-management.

Los administradores pueden administrar esta función con las políticas existentes para la administración de ventanas:

  • DefaultWindowManagementSetting configura el estado predeterminado de la administración de ventanas para todas las apps.
  • WindowManagementAllowedForUrls permite que las IWA con orígenes especificados entren en el modo sin marco y establezcan formas de ventana personalizadas sin interacción del usuario.
  • WindowManagementBlockedForUrls bloquea el permiso para los orígenes especificados, lo que obliga a Chrome a quitar cualquier forma de ventana personalizada y recurrir a otros modos de visualización disponibles.

Nuevas pruebas de origen

En Chrome 154, puedes habilitar las siguientes pruebas de origen nuevas .

Tokens de verificación privados

Los tokens de verificación privados (PVT) son un mecanismo de baja entropía que permite que los sitios web transfieran la confianza que los usuarios establecieron en la navegación normal al modo de navegación privada, lo que reduce la fricción del usuario de CAPTCHAs y desafíos. Los PVT se emiten durante una sesión de navegación normal y se canjean en el modo de navegación privada.