Estilos específicos para CSS, funciones multimedia adicionales, contenedores de desplazamiento enfocados en el teclado 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 118 está beta desde el 13 de septiembre 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 agregaron cuatro funciones de CSS nuevas.
Estilos con alcance
La regla @scope
permite a los desarrolladores limitar las reglas de estilo a una raíz de alcance determinada y definir el diseño de elementos según la proximidad de esa raíz de alcance.
Valores relativos de flujo lógicos de CSS
Agrega los siguientes valores nuevos a las propiedades existentes de CSS:
float: inline-start
float: inline-end
clear: inline-start
clear: inline-end
resize: block
resize: inline
Estas palabras clave direccionales relativas de flujo se resuelven en un valor físico según el modo de escritura o la dirección del elemento o el bloque que lo contiene.
Consultas de medios: función prefers-reduced-transparency
Se agregó la función multimedia prefers-reduced-transparency
, que permite a los desarrolladores adaptar el contenido web a las preferencias seleccionadas por el usuario para reducir la transparencia en el SO, como el parámetro de configuración Reduce transparencia en macOS. Las opciones válidas son reduce
o no-preference
.
Compatibilidad con cuadro de trazo, cuadro de contenido y cuadro de borde en la propiedad CSS del cuadro de transformación
Agregar esta compatibilidad permite cambiar la forma en que se calcula el cuadro de referencia de la propiedad transform
. Esto permite transformaciones o efectos gráficos adicionales. Por ejemplo, la rotación alrededor de un punto del cuadro de contenido, donde el ancho del borde de un elemento no influye en el resultado. Alternativamente, el trazo de un elemento (SVG) debe influir en el resultado, por ejemplo, cuando se rota una forma trazada sobre su centro, incluido el trazo.
HTML
Contenedores de desplazamiento enfocados con el teclado
Mejora la accesibilidad, ya que permite que los contenedores de desplazamiento sean enfocables mediante la navegación de enfoque secuencial. Antes de este cambio, la tecla Tab no enfocaba los desplazadores, a menos que tabIndex
se estableciera explícitamente como 0
o superior. Al hacer que los desplazadores sean enfocables de forma predeterminada, los usuarios que no pueden (o no quieren) usar un mouse podrán acceder al contenido recortado con las teclas de tabulación y de flecha del teclado. Este comportamiento no se aplica a los desplazadores que contienen elementos enfocables del teclado, dado que ya se puede acceder a ellos a través del teclado.
Quita el comportamiento del modo no estándar para el atributo de etiqueta de opción
Los elementos de opciones admiten un atributo label
, que hace que la opción se renderice con el texto dentro del atributo en lugar del texto secundario del elemento de la opción en sí. Esta funcionalidad está inhabilitada en el modo no estándar, en el que se ignora el atributo de etiqueta y se renderiza el texto secundario siempre. Este cambio siempre usará el atributo de etiqueta en el modo estándar y en el modo no estándar.
API web
Inscripción en Privacy Sandbox (PSB)
A medida que las APIs de relevancia y medición de Privacy Sandbox comienzan a estar disponibles para el público en general, queremos asegurarnos de que estas tecnologías se usen según lo previsto y con transparencia. Las APIs incluyen Attribution Reporting, la API de Protected Audience, la API de Topics, la API de Private Aggregation y la API de Shared Storage. PSB presenta un nuevo proceso de inscripción de desarrolladores para las APIs de relevancia y medición de Privacy Sandbox. Chrome recuperará la lista de sitios inscritos del servidor de inscripción (a través del actualizador de componentes) y la usará para establecer el acceso a las APIs de Privacy Sandbox.
Bloquear todas las cookies configuradas con JavaScript que contengan caracteres de control
Actualiza la forma en que se manejan los caracteres de control en las cookies configuradas a través de JavaScript. Específicamente, todos los caracteres de control hacen que se rechace toda la cookie. Anteriormente, un carácter NULL, un carácter de retorno de carro o un carácter de salto de línea en una línea de cookie hacían que se truncara en lugar de que se rechazara por completo, lo que podía haber habilitado el comportamiento malicioso en ciertas circunstancias. Este comportamiento alinea Chrome con el comportamiento indicado en los borradores más recientes de RFC6265bis. Este cambio se puede inhabilitar mediante la política empresarial --disable-features=BlockTruncatedCookies
o BlockTruncatedCookies, que existirá para varios eventos importantes en caso de que este cambio provoque alguna falla.
Tamaño de fuente mínimo coherente en todos los idiomas
Cambia el parámetro de configuración predeterminado del Tamaño mínimo de fuente para que esté desactivado de forma predeterminada en siete idiomas (árabe, chino simplificado, japonés, coreano, tailandés, simplificado y tradicional) para mejorar la interoperabilidad y la accesibilidad. Antes de este cambio, este parámetro de configuración estaba desactivado de forma predeterminada para todos los idiomas, excepto en los siete mencionados. Este cambio hace que estos idiomas sean coherentes con los demás. Ten en cuenta que esto no se trata de cambiar la función de tamaño mínimo de fuente en sí. Estará disponible sin cambios para mejorar la accesibilidad y legibilidad.
Detecta transiciones de UA en las navegaciones de un mismo documento
Las transiciones visuales fluidas a medida que los usuarios navegan por la Web pueden reducir la carga cognitiva, ya que los ayudan a mantenerse en contexto. Sin embargo, la experiencia del usuario es mala si tanto el autor del sitio como UA agregan estas transiciones, ya que las transiciones pueden generar conflictos y confundir al usuario. Esta API evita esos casos para garantizar que solo se ejecute una transición visual a la vez. La API agrega un valor booleano en PopStateEvent
y NavigateEvent
para indicar si la UA ejecutó una transición visual para esta navegación. Los desarrolladores pueden usar esta opción para omitir su transición personalizada.
El analizador de URL no decodificará los caracteres ASCII con codificación porcentual en la ruta de acceso de la URL
Este cambio hace que el analizador de URL no decodifique caracteres ASCII con codificación porcentual en la ruta de acceso de la URL, como "%41" (“A”). Antes de este cambio:
const url = new URL("http://example.com/%41");
url.href "http://example.com/A"
Después de este cambio:
const url = new URL("http://example.com/%41");
url.href "http://example.com/%41"
Segmentación negativa de Protected Audience
En las subastas de anuncios en línea para espacios publicitarios, a veces resulta útil evitar que un anuncio se muestre a determinados públicos, un concepto conocido como segmentación negativa. Por ejemplo, es posible que no desee mostrar el anuncio de un cliente nuevo a los clientes existentes. En las campañas de adquisición de clientes nuevos, esto suele ser un requisito fundamental. Actualmente, Protected Audience permite que los anuncios se segmenten para usuarios que se unieron a un grupo de interés determinado a través de alguna actividad anterior en la Web. Esta función amplía Protected Audience para habilitar la segmentación negativa, ya que permite que los anuncios nuevos se segmenten solo para aquellos usuarios que no se hayan unido a un grupo de interés determinado. De esta manera, permitimos que los anunciantes segmenten nuevos grupos de usuarios usando los conceptos existentes de la API de Protected Audience que preservan la privacidad.
Quitar requisito de activación de usuario de pagos
Para ayudar a los desarrolladores a reducir la fricción en los flujos de solicitudes de pago, quitaremos el requisito de activación de usuarios en las solicitudes de pago y la confirmación de pago segura. Con este cambio, se implementaron mitigaciones de spam y clickjacking para reducir los riesgos de seguridad y privacidad.
WebUSB en Service Workers de extensión
Permite que los desarrolladores web usen la API de WebUSB cuando responden a eventos de extensiones. Para ello, expone la API de WebUSB a los Service Workers registrados por las extensiones del navegador. Por el momento, esta API no está expuesta a los service workers registrados por sitios.
Los documentos XML fusionan secciones consecutivas CDATA en un solo nodo
Debido a un error en libxml, las secciones CDATA en un documento XHTML pueden producir erróneamente varios nodos, según el tamaño del documento y la posición de la sección CDATA en el documento. Cuando una sola sección CDATA abarca múltiples fragmentos del analizador de entrada, libxml almacena en búfer y emite la entrada CDATA en ejecuciones de 300 bytes. De forma inesperada, una sola sección de CDATA se convierte en varios nodos (si la longitud del fragmento de entrada es superior a 300 bytes). Este cambio hace que los nodos de sección CDATA del mismo nivel se combinen en una sola sección CDATA durante el análisis. Esto corrige el error de libxml durante el análisis, pero también combina los nodos independientes creados, por ejemplo: <![CDATA[foo]]><!CDATA[bar]]>
producirá un solo nodo CDATA DOM con contenido "foobar": CDATA "foobar"
.
Cambiar la condición del diálogo del controlador beforeunload
Hay dos cambios nuevos en la forma en que se solicita el diálogo de cancelación para el evento beforeunload
.
Si se llama a event.preventDefault()
, aparecerá el diálogo de cancelación.
Si event.returnValue
es la cadena vacía, no abras el diálogo de cancelación.
Pruebas de origen en curso
En Chrome 118, puedes habilitar la siguiente prueba de origen nueva.
Transformación codificada de WebRTC: Modifica las funciones de metadatos
Agrega funciones a la API de WebRTC Encoded Transform que permiten manipular los metadatos de los fotogramas de audio y video. Se identificaron varios casos de uso que requieren la manipulación de contenido multimedia codificado en WebRTC sin decodificarlos primero. Estos incluyen los siguientes:
- Enviar datos que se codificaron anteriormente
- Envío de datos recibidos en formato codificado
- Recibir datos en formato codificado y reenviarlos
En particular, queremos admitir el caso de uso de reenvío sin fallas de contenido multimedia proveniente de varias conexiones de intercambio de tráfico redundantes que proporcionen las mismas cargas útiles de contenido multimedia, pero con metadatos diferentes.
Regístrate en la prueba de origen RTCEncodedFrameSetMetadata.
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 quita la siguiente función.
Eliminación de algunas palabras clave de apariencia no estándar
En Chrome 118, se desactivarán las palabras clave appearance
no estándar con el menor uso. Una vez que se desactive la función, se ignorará la propiedad de aspecto si usa esa palabra clave como valor. Las palabras clave que se desactivan en Chrome 118 son aquellas con menos del 0.001% de uso:
media-slider
media-sliderthumb
media-volume-slider
media-volume-sliderthumb
sliderthumb-horizontal
sliderthumb-vertical
Información general
Dado que solo se deben admitir palabras clave appearance
estándares, quitaremos las appearance
(y -webkit-appearance
) que no son estándares. La lista completa es la siguiente:
inner-spin-button
media-slider
media-sliderthumb
media-volume-slider
media-volume-sliderthumb
push-button
searchfield-cancel-button
slider-horizontal
sliderthumb-horizontal
sliderthumb-vertical
square-button
Ten en cuenta que no se quitará el valor slider-vertical
para permitir el acceso vertical de <input type=range>
. Será
Se quitará una vez que se adopte por completo el modo de escritura vertical de controles de formulario.
Antes de la desactivación, si se usa cualquiera de las palabras clave anteriores, se mostrará una advertencia de la consola, pero la palabra clave se reconocerá como un valor válido.