Publicado: 14 de enero 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 las funciones que se indican aquí a través de los vínculos proporcionados o de la lista en ChromeStatus.com. Chrome está en versión beta desde el 14 de enero de 2026. Puedes descargar la versión más reciente en Google.com para computadoras o en Google Play Store para Android.
CSS y la IU
Admite la propiedad de CSS text-justify
Los desarrolladores pueden controlar cómo se justifica el texto cuando se aplica text-align: justify con la propiedad text-justify. Por ejemplo, forzar la justificación expandiendo el espacio entre caracteres, incluso en texto en inglés.
Refina el cálculo del borde de sombra border-radius para valores de border-radius altos
Esta mejora garantiza que las sombras y los límites de recorte en los elementos casi circulares (en los que border-radius está cerca del 50%) coincidan con precisión con el contorno visual del borde curvo.
Esto produce una renderización más coherente de formas redondeadas complejas, lo que elimina las discrepancias visuales para valores de radio altos. El factor de ajuste del radio de borde, que garantiza que las esquinas se vean nítidas para radios pequeños, ahora se amortigua progresivamente a medida que el valor del radio se acerca al 50%.
Esto también se aplica a los contornos que no son redondos (con corner-shape), que ahora usan el mismo mecanismo de ajuste de radio.
Ajuste de columna para el diseño de varias columnas de CSS
A partir de Chrome 145, se admiten las propiedades column-wrap y column-height en el diseño de varias columnas. Estas propiedades te permiten ajustar columnas en una fila nueva en la dirección del bloque.
Antes de Chrome 145, si la altura del contenedor multicolumna estaba restringida, el contenido que no cabía en el espacio disponible aparecía como columnas de desbordamiento en la dirección intercalada. Esto crearía una barra de desplazamiento horizontal en la Web. Con las propiedades column-height y column-wrap, puedes establecer una altura para la fila de columnas y configurar las columnas de desbordamiento para que aparezcan como una fila nueva.
Obtén más información en Compatibilidad con columnas ajustadas en el diseño de varias columnas.
Expone el evento onanimationcancel a GlobalEventHandlers
CSS Animations Level 1 extiende la interfaz GlobalEventsHandler definida en la especificación de HTML, y declara cuatro nuevos controladores de eventos: onanimationstart, onanimationiteration, onanimationend y onanimationcancel.
Faltaba el controlador de eventos onanimationcancel en el IDL de GlobalEventsHandler, y ahora se expone.
CSS letter-spacing y word-spacing: valores de porcentaje
Habilita los valores de porcentaje para las propiedades letter-spacing y word-spacing de CSS, según se definen en la especificación del Módulo de texto de CSS, nivel 4. Los valores de porcentaje se calculan en relación con la medida de avance del carácter de espacio (U+0020). Esto les brinda a los desarrolladores un control más sólido y flexible sobre la tipografía, en especial en los diseños responsivos en los que el espaciado del texto debe adaptarse a diferentes ventanas gráficas y tamaños de fuente.
Lista de opciones personalizable
Esta función extiende la compatibilidad con la selección personalizable al modo de renderización de listbox, incluida la selección única y múltiple en el modo de listbox.
El modo de procesamiento de la lista significa que el elemento <select> se procesa en el flujo o en la página, en lugar de con un botón y una ventana emergente independientes. El modo de renderización de Listbox se habilita en todas las plataformas a través de los atributos múltiples o de tamaño, como <select multiple> o <select size=4>. Cuando se aplique la propiedad appearance:base-select de CSS al elemento <select> con estos atributos, ahora tendrá un comportamiento de entrada y renderización mejorados.
Esta función no admite la selección personalizable para la ventana emergente de selección múltiple, que se incluirá más adelante. Se deben establecer los siguientes atributos para obtener una ventana emergente de selección múltiple: <select multiple size=1>.
Habilita la renderización de emojis monocromáticos en el modo de colores forzados.
Este cambio actualiza el comportamiento de renderización de emojis en el modo Colores forzados de Chrome. Durante la resolución de valores calculados, los emojis cuyo valor font-variant-emoji se calcula como normal o Unicode se renderizan con sus glifos monocromáticos cuando están disponibles.
Por lo tanto, Chrome suprimirá la renderización de emojis en color, lo que garantiza que los emojis participen plenamente en la canalización del modo de colores forzados y respeten los colores de alto contraste del sistema. El comportamiento fuera del modo de colores forzados no cambia.
La opción focusVisible en el método focus()
Cuando llaman al método focus(), los desarrolladores ahora pueden proporcionar un valor booleano focusVisible en el diccionario FocusOptions. Cuando es verdadero, siempre se pintará un anillo de enfoque alrededor del elemento recién enfocado, y coincidirá con la seudoclase :focus-visible. Cuando es falso, no se pintará el anillo de enfoque y no coincidirá.:focus-visible Cuando falta, el agente de usuario determina por sí mismo si se debe pintar el anillo de enfoque y la pseudoclase :focus-visible coincide según corresponda.
Efecto de sobredesplazamiento en elementos desplazables que no son raíz
Muestra efectos de sobredesplazamiento elástico en contenedores de desplazamiento que no son raíz. Cuando un elemento desplazable anidado alcanza su límite de desplazamiento, la ayuda para el desplazamiento más allá del límite se aplica a ese elemento en lugar de solo al elemento desplazable raíz. Esto reduce la necesidad de soluciones alternativas personalizadas de JavaScript y se puede controlar por elemento con overscroll-behavior.
Cómo mostrar la posición real de la ventana en Android
Ahora Chrome en Android informa con precisión la posición y el tamaño de la ventana del navegador con window.screenX, window.screenY, window.outerWidth y window.outerHeight.
Anteriormente, Chrome suponía incorrectamente que todas las ventanas del navegador en Android comenzaban en las coordenadas (0, 0). Esto es impreciso para las tablets Android que usan el modo de ventanas de formato libre, lo que hace que los sitios web siempre reciban 0 cuando consultan la posición en pantalla de la ventana con window.screenX y window.screenY (estos campos almacenan las coordenadas de la esquina superior izquierda de la ventana en el espacio de coordenadas del área de trabajo global).
Además, Chrome en Android suponía incorrectamente que las dimensiones externas de la ventana del navegador eran iguales a las dimensiones internas del viewport del sitio web.
API web
API de Navigation: Expone el destino en navigation.transition
Antes de Chrome 145, NavigationTransition tenía una propiedad from que exponía la URL anterior de la navegación. Exponer to (un NavigationDestination) completa este paso. Es especialmente útil cuando se usan controladores precommit, ya que, durante precommit, la URL actual aún no cambió al destino.
WebGPU: Función subgroup_uniformity
Se agregó un nuevo alcance al análisis de uniformidad y se cambiaron las partes del lenguaje que se verifican en cada uno para permitir que la funcionalidad de subgrupos se considere uniforme en más casos.
Actualizar o insertar
Implementa la propuesta de ECMAScript para Map.prototype.getOrInsert, Map.prototype.getOrInsertComputed, WeakMap.prototype.getOrInsert y WeakMap.prototype.getOrInsertComputed.
Tipos de InputEvent para comandos de eliminación en selecciones no contraídas
Informa valores de inputType precisos para las combinaciones de teclas de eliminación en el texto seleccionado. Cuando se usan comandos de eliminación como Control + Retroceso o Control + Suprimir con texto seleccionado en elementos editables, los eventos beforeinput y input ahora informan deleteContentBackward o deleteContentForward en lugar de deleteWordBackward o deleteWordForward. Esto permite que los desarrolladores web comprendan correctamente qué operación de edición se produjo y que implementen comportamientos de edición personalizados, o de rehacer y deshacer confiables.
Atributo maxAge de la API de Cookie Store
Permite que las entidades llamadoras especifiquen un maxAge cuando configuran una cookie con la API de Cookie Store.
El tiempo de vencimiento de las cookies ya se puede configurar con el atributo expires, pero maxAge proporciona una opción más idiomática y alinea la API de Cookie Store con las opciones que proporcionan document.cookie y el encabezado HTTP Set-Cookie.
Confirmación de pago seguro: Claves vinculadas al navegador
Agrega una firma criptográfica adicional sobre las aserciones de la Confirmación de pago seguro y la creación de credenciales. La clave privada correspondiente no se sincroniza en los dispositivos. Esto ayuda a los desarrolladores web a cumplir con los requisitos de vinculación de dispositivos para las transacciones de pago.
Activación persistente para el evento clipboardchange
Chrome ahora requiere la activación del usuario persistente o el permiso de clipboard-read para activar eventos de clipboardchange, lo que evita la supervisión no autorizada del portapapeles.
Este cambio se define en la especificación de la API de Clipboard.
Exponer rtpTimestamp desde fotogramas de video de WebRTC con VideoFrame.metadata()
Agrega un método VideoFrame.metadata() que devuelve un diccionario que contiene el campo rtpTimestamp, si el VideoFrame subyacente tiene este campo en sus metadatos. De lo contrario, se devuelve un diccionario vacío. Solo los fotogramas de video que provienen de fuentes de WebRTC tendrán los metadatos rtpTimestamp adjuntos.
Permite que las aplicaciones web comprendan los tiempos de rendimiento bimodal
Las aplicaciones web pueden sufrir una distribución bimodal en el rendimiento de carga de la página debido a factores que escapan al control de la aplicación. Por ejemplo, cuando un agente de usuario se inicia por primera vez en una situación de "inicio en frío", debe realizar muchas tareas de inicialización costosas que compiten por los recursos del sistema. Las extensiones del navegador también pueden afectar el rendimiento, ya que algunas ejecutan código adicional en cada página que visitas, lo que aumenta el uso de la CPU y ralentiza los tiempos de respuesta. Del mismo modo, cuando una máquina ya está ocupada con tareas intensivas, es posible que las páginas web se carguen más lentamente como resultado.
En estas situaciones, el contenido que la app web intenta cargar competirá con otro trabajo que se esté realizando en el sistema. Esto dificulta la detección de problemas de rendimiento en las aplicaciones web o debido a factores externos.
Un nuevo campo confidence en el objeto PerformanceNavigationTiming permite a los desarrolladores discernir si los tiempos de navegación son representativos para su aplicación web.
Agrega presentationTime y paintTime a las entradas de rendimiento
Expone paintTime y presentationTime en el tiempo de elementos, el LCP, los fotogramas de animación largos y el tiempo de pintura.
paintTime significa el momento en que finalizó la fase de renderización y el navegador comenzó la fase de pintura. presentationTime significa el momento en que los "píxeles llegaron a la pantalla", lo que se define en cierta medida según la implementación. Consulta LCP y INP ahora están disponibles como valores de referencia.
Uso de píxeles de CSS en la API de LayoutShift
Esta función cambia los datos de atribución (prevRect y currentRect) en la API de LayoutShift para que se registren en píxeles de CSS en lugar de píxeles físicos. El comportamiento actual no es coherente con otras APIs relacionadas con el diseño, que usan píxeles de CSS. Este cambio mejora la coherencia, simplifica el uso para los desarrolladores y se alinea con las unidades esperadas en la depuración y las herramientas.
Ten en cuenta que esto no afecta el valor de la métrica de CLS, pero sí las herramientas de depuración que muestran capturas de pantalla e imágenes de esos cambios.
Credenciales de sesión vinculadas al dispositivo (DBSC)
Es una forma en que los sitios web pueden vincular de forma segura una sesión a un solo dispositivo.
Permite que los servidores tengan una sesión vinculada de forma segura a un dispositivo. El navegador renueva la sesión periódicamente según lo solicita el servidor, con una prueba de posesión de una clave privada.
Permisos divididos de acceso a la red local
Esta es una mejora de las restricciones de acceso a la red local (LNA), en la que dividimos el permiso requerido de un permiso de acceso a la red local en dos permisos separados.
Permiso anterior: local-network-access
Permisos nuevos:
local-network: Para solicitudes de LNA a IPs en el espacio de direcciones local.loopback-network: Para solicitudes de LNA a IPs en el espacio de direcciones de bucle invertido.
El permiso anterior se conserva como alias y debería seguir funcionando para permissions.query y la Política de permisos. Las políticas empresariales actuales seguirán funcionando de la misma manera. Las políticas empresariales más recientes y detalladas se agregarán en un momento posterior.
La API de Origin
El origen es un componente fundamental de la implementación de la Web, esencial para los límites de seguridad y privacidad que mantienen los agentes de usuario. El concepto está bien definido entre HTML y URL, junto con conceptos adyacentes ampliamente utilizados, como sitio.
Sin embargo, los orígenes no se exponen directamente a los desarrolladores web. Si bien hay varios métodos get de origen en varios objetos, cada uno de ellos devuelve la serialización ASCII de un origen, no el origen en sí. Esto tiene algunas consecuencias negativas. En la práctica, los desarrolladores que intentan realizar comparaciones de mismo origen o mismo sitio cuando controlan orígenes serializados a menudo cometen errores que generan vulnerabilidades. Desde el punto de vista filosófico, parece que falta una primitiva de seguridad que los desarrolladores tienen dificultades para completar con precisión.
La API de Origin aborda esta brecha en la plataforma introduciendo un objeto origin que encapsula el concepto de origen y proporciona métodos útiles para la comparación, la serialización y el análisis.
API de Sanitizer
La API de Sanitizer proporciona una forma para que los desarrolladores quiten contenido que pueda ejecutar secuencias de comandos desde contenido HTML arbitrario proporcionado por el usuario. El objetivo es facilitar la creación de aplicaciones web sin XSS.
Alineación de la especificación de Trusted Types
Trusted Types se implementó y lanzó originalmente en Chrome en 2019.
La especificación de Trusted Types ahora se está implementando en otros navegadores. Como parte de ese proceso, se identifican y corrigen varias incoherencias en la especificación. En esta versión, se corrigieron estos problemas en Chrome para alinearse con la nueva especificación.
Nuevas pruebas de origen
En Chrome 145, puedes habilitar las siguientes pruebas de origen nuevas.
WebAudio: Quantum de renderización configurable
AudioContext y OfflineAudioContext ahora toman un renderSizeHint opcional, lo que permite a los usuarios solicitar un tamaño de quantum de renderización en particular cuando se pasa un número entero, usar el valor predeterminado de 128 fotogramas si no se pasa nada o default, o solicitar al agente de usuario que elija un buen tamaño de quantum de renderización si se especifica hardware.
Bajas y eliminaciones
En esta versión de Chrome, se introducen las siguientes bajas y eliminaciones. Visita ChromeStatus.com para ver listas de las bajas planificadas, las bajas actuales y las eliminaciones anteriores.
Chrome dejará de ser compatible con las cámaras virtuales obsoletas en macOS
A partir de Chrome 145, se quitó la compatibilidad con las cámaras virtuales obsoletas para todas las versiones de macOS compatibles.
En macOS, las cámaras virtuales modernas se compilan con el framework de Core Media IO, que está disponible desde macOS 12.3. Apple se comunicó con los desarrolladores, y todo el software moderno de cámaras virtuales se migró para usar este framework de Core Media IO.
macOS bloqueó las cámaras virtuales obsoletas, creadas como complementos de DAL, a partir de macOS 14.1 (2023), y Safari no las admite desde 2018, si no antes.
Quita la extensión BMP para incorporar JPEG o PNG en BMP
Chrome quitará la extensión BMP para incorporar JPEG o PNG en BMP, ya que ningún otro navegador admite esta extensión y no tiene uso (según se registró con los datos de UMA).
Las cadenas de usuario-agente se reducen de forma predeterminada
A partir de Chrome 145, se quitará por completo la política UserAgentReduction. Anteriormente, esta política estaba disponible para controlar si Chrome enviaba una cadena de usuario-agente reducida o completa.
Para mejorar la privacidad del usuario y reducir las capacidades de seguimiento pasivo, Chrome comenzó a reducir la información que contiene el encabezado User-Agent de forma predeterminada en la versión 110 de Chrome. La política UserAgentReduction se proporcionó como una medida temporal para que las empresas administren esta transición.
El mecanismo recomendado para que los sitios web accedan a la información del navegador y del dispositivo ahora son las sugerencias de clientes de usuario-agente (UA-CH). UA-CH requiere que los sitios web soliciten de forma activa información específica, lo que constituye un enfoque que preserva más la privacidad que la cadena de usuario-agente heredada.
A partir de Chrome 145, la política UserAgentReduction no tendrá efecto.
De forma predeterminada, Chrome enviará una cadena de usuario-agente reducida. Es posible que los sistemas o las aplicaciones que dependían de esta política para recibir la cadena User-Agent completa (heredada) ya no reciban la información detallada que esperan.