Varias palabras clave para la propiedad de visualización de CSS, WGSLLanguageFeatures para WebGPU, actualizaciones de HTTPS y mucho más
A menos que se indique lo contrario, los cambios descritos 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 enumeran aquí a través de los vínculos proporcionados o de la lista en ChromeStatus.com. Chrome 115 está en versión beta desde el 31 de mayo de 2023. Puedes descargar la versión más reciente en Google.com para computadoras o desde Google Play Store para Android.
CSS
En esta versión se agregan tres funciones de CSS nuevas.
Varios valores de la propiedad display
La propiedad display
de CSS ahora acepta varias palabras clave como valor, además de las palabras clave heredadas precompuestas. Las primeras dos palabras clave representan los valores internos y externos de la visualización, hay marcas opcionales para list-item
, valores internos como table-cell
, y los valores de cuadro de contents
y none
.
Con las palabras clave internas y externas, puedes definir cómo se comporta el cuadro externo (bloqueo o intercalado) y cómo se comportan los elementos secundarios internos, por ejemplo, flex
, grid
o flow
. Por lo tanto, display: flex
se convierte en display: block flex
, y display: block
se convierte en display: block flow
. Consulta MDN para obtener una lista de asignaciones comunes y más información.
Consultas de contenedores de estilo de contexto booleano
Chrome 115 admite consultas de contenedor style()
sin un valor de declaración, solo un nombre de propiedad, como una forma de hacer coincidir los valores no iniciales. Anteriormente, tenías que usar not style(--my-property: initial)
. Ahora puedes usar style(--my-property)
para buscar coincidencias con cualquier valor no inicial.
Animaciones basadas en desplazamientos
ScrollTimeline
y ViewTimeline
son una extensión de la especificación de animaciones web que permiten a los desarrolladores usar la posición de una barra de desplazamiento o la de un elemento dentro de una barra de desplazamiento como un "tiempo" de entrada. en lugar de la hora del reloj monotónico predeterminado. Esto permite animaciones basadas en desplazamientos acelerados, como una barra de navegación que se reduce, sin requerir la ejecución de la secuencia de comandos del usuario. Se pueden declarar y crear instancias de ellos a través de CSS y JavaScript, que se usan en animaciones de CSS y animaciones web.
Para obtener más detalles, consulta Cómo animar elementos al desplazarse con animaciones basadas en desplazamientos.
Se corrigió la regresión por la que los elementos con display: contents
ya no se mostraban en el árbol de accesibilidad.
Se introdujo una regresión que causaba que los elementos con display: contents
perdieran información semántica y ya no se representaran correctamente en el árbol de accesibilidad. Chrome 115 incluye una corrección para este problema.
API web
Aumenta a 8 MB el tamaño máximo de un elemento WebAssembly.Module()
en el subproceso principal
El constructor WebAssembly.Module() compila un módulo binario de WebAssembly de manera síncrona, lo que puede bloquear el subproceso principal. Para evitar esto, el tamaño máximo de un módulo de WebAssembly que se puede compilar con este constructor se limita a 8 MB. Los módulos más grandes se pueden compilar de forma asíncrona en el subproceso principal con WebAssembly.compile()
o de forma síncrona en un subproceso de trabajo. El límite de 8 MB es una extensión del límite original de 4 KB. Esta extensión es posible gracias a las mejoras en el tiempo de ejecución de WebAssembly V8. El límite de 8 MB se determinó a través de las mediciones de rendimiento de un teléfono Google Pixel 1, que actualmente se considera un teléfono de gama baja representativo. Los futuros desarrollos en V8 o hardware podrían permitir extensiones adicionales del límite.
FedCM: Compatibilidad con los requisitos de mediación de administración de credenciales para la reautenticación automática
Admite los requisitos de mediación de administración de credenciales para proporcionar una UX de reautenticación optimizada a los usuarios que crearon cuentas federadas en sitios web con la API de FedCM.
Actualizaciones de HTTPS
Actualiza de forma automática y optimista todas las navegaciones de la unidad principal a HTTPS, con un resguardo rápido a HTTP.
Cómo particionar las APIs de almacenamiento, service worker y comunicación
Para evitar ciertos tipos de seguimiento entre sitios en varios canales laterales, Chrome particiona las APIs de almacenamiento y comunicación en contextos de terceros. Esto incluye el almacenamiento administrado por cuotas, los service workers y las APIs de comunicación (como BroadcastChannel). Consulta la documentación sobre la partición de almacenamiento para obtener más detalles.
Resource Timing: Expón los tiempos de respuesta provisionales
Expón PerformanceResourceTiming.firstInterimResponseStart
en casos en los que una recuperación de navegación o subrecurso encuentra una respuesta provisional 1xx. Por ejemplo, con 100 sugerencias de continuación o 103 sugerencias anticipadas, firstInterimResponseStart
ahora corresponde a la hora de esa primera respuesta provisional, mientras que responseStart
corresponde a la respuesta final, por ejemplo, con estado 200.
Actualización de "xml" manejo de prefijos en lookupNamespaceURI()
y createNSResolver()
Node.lookupNamespaceURI()
es compatible con "xml". y “xmlns” de forma predeterminada. La función muestra cadenas de espacio de nombres fijas para ellos. Document.createNSResolver()
y XPathEvaluator.createNSResolver()
se detienen para unir el nodo especificado y agregar “xml”. y el manejo de prefijos. Muestran el nodo especificado tal como está. Los desarrolladores web ahora pueden usar un elemento como XPathNSResolver
sin unirlo con createNSResolver()
.
VisibilityStateEntry
Expone el estado de visibilidad (oculto o visible) en el cronograma de rendimiento. El cronograma siempre tendrá una entrada con un startTime
de 0 y el estado de visibilidad inicial, además de las entradas correspondientes a cualquier cambio de estado de visibilidad.
WGSLLanguageFeatures para WebGPU
Agrega el método get wgslLanguageFeatures
en el objeto GPU para WebGPU y su tipo WGSLLanguageFeatures
correspondiente.
Comandos de WebDriver para interactuar con los diálogos de FedCM
Esto expone varios comandos de WebDriver para habilitar la automatización del navegador, como las pruebas automatizadas, para interactuar con los diálogos de FedCM.
Pruebas de origen en curso
En Chrome 115, puedes habilitar las siguientes pruebas de origen nuevas.
Presión de procesamiento
La API de Compute Pressure ofrece información general sobre el estado actual del hardware del dispositivo para permitir que los sitios alcancen el equilibrio adecuado para los usuarios entre aprovechar la potencia de procesamiento disponible y poner al sistema en condiciones de esfuerzo imposible de administrar. Presión de procesamiento es un término genérico por diseño. Por el momento, se calcula en función de la carga de CPU, pero los planes futuros incluyen el uso de señales de temperatura y estado de la batería, por ejemplo. Obtén más información en Anunciamos la segunda prueba de origen de la presión de procesamiento.
Regístrate en la prueba de origen de la presión de cómputos.
Sugerencias de compilación explícitas con comentarios mágicos
Permite adjuntar información sobre las funciones que se deben analizar y compilar con anticipación en los archivos JavaScript. La información se codificará como comentarios mágicos. Experimentaremos con diferentes formatos de comentarios mágicos. Por ejemplo, marcar todas las funciones en un archivo para una compilación inmediata o marcar solo un subconjunto de funciones.
API de Long Animation Frames
Esta es una extensión de la API de Long Tasks. Mide la tarea junto con su posterior actualización de renderización y agrega información como secuencias de comandos de larga duración, tiempo de renderización y tiempo dedicado al diseño y el estilo forzados, conocido como hiperpaginación de diseño. Los desarrolladores pueden usar esto como diagnóstico de "lenta", que se mide con Interaction to Next Paint (INP), ya que encuentran las causas de la congestión del subproceso principal, que suele ser la causa de una INP incorrecta.
Regístrate en la prueba de origen de Long Animation Frames.
API de Storage Buckets
Con los buckets de almacenamiento, los sitios pueden crear varios buckets de almacenamiento para organizar sus datos, lo que permite que los usuarios-agentes borren cada bucket independientemente de los demás. Cada bucket de almacenamiento puede almacenar datos asociados con las APIs de almacenamiento establecidas, como IndexedDB y CacheStorage. Regístrate en la prueba de origen de la API de Storage Buckets.
Bajas y eliminaciones
Esta versión de Chrome incluye las bajas y las eliminaciones que se indican a continuación. Visita ChromeStatus.com para consultar las listas de bajas planificadas, bajas actuales y eliminaciones anteriores.
Esta versión de Chrome da de baja dos funciones.
Dar de baja el método set document.domain
El método set document.domain
dejará de estar disponible porque permite que los desarrolladores relajen la política del mismo origen, lo que complica el límite de seguridad fundamental que intentamos mantener y supone obstáculos en el camino de los cambios posteriores a Spectre en el modelo de procesos de Chromium.
Visita Chrome inhabilita la modificación de document.domain para conocer alternativas al uso de document.domain. En la mayoría de los casos de uso, el origen cruzado postMessage()
o la API de Channel Messaging pueden reemplazar document.domain. Como último recurso, puedes habilitar el dominio del documento a través de los clústeres de agentes con clave de origen. El método set permanecerá, pero el origen no se modificará.
Baja de los eventos de mutación
Los eventos de mutación, incluidos DOMSubtreeModified
, DOMNodeInserted
, DOMNodeRemoved
, DOMNodeRemovedFromDocument
y DOMNodeInsertedIntoDocument
dejaron de estar disponibles de la especificación en 2011 y se reemplazaron en 2012 por la API de Mutation Observer. El uso de los eventos de mutación obsoletos debe migrarse a Mutation Observer antes de quitarlos en Chrome 127 (20 de julio de 2024).
Obtén más información sobre la baja de los eventos de mutación.