Chrome 118 beta

Estilos determinados 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 mencionadas aquí a través de los vínculos proporcionados o en la lista de ChromeStatus.com. Chrome 118 está en versión beta a partir del 13 de septiembre de 2023. Puedes descargar la versión más reciente en Google.com para computadoras de escritorio o en Google Play Store para Android.

CSS

En esta versión, se agregan cuatro funciones nuevas de CSS.

Estilos con alcance

La regla @scope permite a los desarrolladores limitar las reglas de estilo en una raíz determinada y aplicar diseño a los 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 de CSS existentes:

  • float: inline-start
  • float: inline-end
  • clear: inline-start
  • clear: inline-end
  • resize: block
  • resize: inline

Estas palabras clave direccionales relativas al flujo se resuelven en un valor físico según el modo o la dirección de escritura 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 contenido web según las preferencias seleccionadas por el usuario para reducir la transparencia en el SO, como la configuración Reducir transparencia en macOS. Las opciones válidas son reduce o no-preference.

Compatibilidad con los cuadros de trazo, cuadro de contenido y cuadro de borde en la propiedad de CSS del cuadro de transformación

Agregar esta compatibilidad permite cambiar la forma en que se calcula el cuadro de referencia para la propiedad transform. Esto habilita transformaciones o efectos gráficos adicionales. Por ejemplo, la rotación alrededor de un punto en el cuadro de contenido, donde el ancho del borde de un elemento no influye en el resultado. O bien, cuando el trazo de un elemento (SVG) debe influir en el resultado, por ejemplo, cuando se rota una forma trazada alrededor de su centro, incluido el trazo.

HTML

Contenedores de desplazamiento enfocados en el teclado

Mejora la accesibilidad, ya que permite que los contenedores de desplazamiento sean enfocables con la navegación de enfoque secuencial. Antes de este cambio, la tecla Tab no enfocaba a los desplazadores, a menos que tabIndex se establezca explícitamente en 0 o más. Al permitir que los desplazadores puedan enfocarse de forma predeterminada, los usuarios que no pueden (o no quieren) usar un mouse podrán acceder al contenido recortado con las teclas de flecha y de tabulación del teclado. Este comportamiento no se aplica a los desplazadores que contienen elementos enfocables del teclado, dado que ya se puede acceder a ellos con el teclado.

Se quitó el comportamiento del modo de peculiaridades para el atributo de etiqueta de opción

Los elementos de opción 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 opción en sí. Esta funcionalidad está inhabilitada en el modo no estándar, en el que se ignora el atributo de la etiqueta y siempre se renderiza el texto secundario. Este cambio siempre usará el atributo label en el modo estándar y el modo no estándar.

APIs web

Inscripción a Privacy Sandbox (PSB)

A medida que las APIs de relevancia y medición de Privacy Sandbox comienzan a tener disponibilidad 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 (mediante el actualizador de componentes) y la usará para restringir el acceso a las APIs de Privacy Sandbox.

Bloquear todas las cookies configuradas mediante JavaScript que contengan caracteres de control

Actualiza la forma en que se manejan los caracteres de control en cookies configuradas mediante JavaScript. Concretamente, todos los caracteres de control hacen que se rechace toda la cookie. Anteriormente, un carácter NULO, 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 rechazarlo por completo, lo que podía haber habilitado un comportamiento malicioso en ciertas circunstancias. Este comportamiento alinea a Chrome con el comportamiento indicado por las versiones más recientes de RFC6265bis. Este cambio se puede inhabilitar mediante la política empresarial --disable-features=BlockTruncatedCookies o BlockTruncatedCookies, que estará disponible para varios eventos importantes en caso de que el cambio cause fallas.

Tamaño de fuente mínimo coherente en todos los idiomas

Se cambió la configuración predeterminada del Tamaño mínimo de fuente para que esté desactivada de forma predeterminada en siete idiomas (árabe, farsi, japonés, coreano, tailandés, chino simplificado y tradicional) a fin de mejorar la interoperabilidad y la accesibilidad. Antes de este cambio, esta configuración estaba desactivada de forma predeterminada en todos los idiomas, excepto en los siete idiomas indicados. Este cambio hace que estos idiomas sean coherentes con otros idiomas. Ten en cuenta que esto no se trata de cambiar la función de tamaño mínimo de fuente en sí misma. Estará disponible sin cambios para mejorar la accesibilidad y la legibilidad.

Detecta transiciones de UA en la navegación en el mismo documento

Las transiciones visuales fluidas mientras los usuarios navegan por la Web pueden reducir la carga cognitiva, ya que ayudan a los usuarios a mantenerse en contexto. Sin embargo, la experiencia del usuario será mala si tanto el autor del sitio como UA agregan estas transiciones: las transiciones pueden entrar en conflicto y generar confusión para el 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 UA ejecutó una transición visual para esta navegación. Los desarrolladores pueden usar esta opción para omitir la transición personalizada.

El analizador de URL no decodificará los caracteres ASCII con codificación porcentual en la ruta de la URL

Este cambio hace que el analizador de URL no decodifique los caracteres ASCII con codificación porcentual en la ruta 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 para Públicos protegidos

En las subastas de anuncios en línea para espacios publicitarios, a veces resulta útil evitar que un anuncio se muestre a públicos determinados, lo que se conoce como segmentación negativa. Por ejemplo, es posible que no desee mostrar el anuncio de un cliente nuevo a clientes existentes. Las campañas de adquisición de clientes nuevos suelen tener este requisito fundamental. Actualmente, Protected Audience permite que los anuncios se segmenten para usuarios que se unieron a un grupo de interés determinado mediante alguna actividad anterior en la Web. Esta función extiende Protected Audience para que habilite 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 se segmenten para nuevos grupos de usuarios usando los conceptos existentes que preservan la privacidad de la API de Protected Audience.

Quitar el requisito de activación del 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 del usuario en las solicitudes de pago y la confirmación de pago seguro. Con este cambio, se implementaron mitigaciones de spam y clickjacking para mitigar los riesgos de seguridad y privacidad.

WebUSB en Extension Service Workers

Permite a los desarrolladores web usar la API de WebUSB cuando responde a eventos de extensión exponiendo la API de WebUSB a Service Workers registrados por extensiones del navegador. Actualmente, esta API no está expuesta a los service workers registrados por sitios.

Los documentos XML combinan secciones de CDATA consecutivas en un solo nodo

Debido a un error en libxml, las secciones CDATA de un documento XHTML a veces pueden producir varios nodos de forma errónea, según el tamaño del documento y la posición de la sección CDATA en el documento. Cuando una sola sección de CDATA abarca varios fragmentos del analizador de entrada, libxml almacena en búfer y emite la entrada de CDATA en ejecuciones de 300 bytes. Esto convierte inesperadamente una sola sección CDATA en varios nodos (si la longitud del bloque de entrada es mayor que 300 bytes). Este cambio hace que los nodos de la sección CDATA del mismo nivel se combinen en una sola sección de CDATA durante el análisis. Esto corrige el error de libxml durante el análisis, pero también combinará nodos independientes creados, por ejemplo: <![CDATA[foo]]><!CDATA[bar]]> producirá un solo nodo de CDATA DOM con contenido "foobar": CDATA "foobar".

Cambiar la condición del diálogo del controlador beforeunload

Hay dos cambios nuevos en cómo se solicita el diálogo de cancelación para el evento beforeunload.

Si se llama a event.preventDefault(), solicita el diálogo de cancelación. Si event.returnValue es la string vacía, no solicites el diálogo de cancelación.

Pruebas de origen en curso

En Chrome 118, puedes habilitar la siguiente nueva prueba de origen.

Transformación codificada en WebRTC: modifica las funciones de metadatos

Agrega funciones a la API de WebRTC Encoded Transform que permiten manipular los metadatos de fotogramas de audio y video. Se identificaron varios casos de uso que requieren la manipulación de medios codificados en WebRTC sin decodificarlos primero. Incluye las siguientes herramientas:

  • Enviar datos codificados con anterioridad.
  • Enviar datos que se recibieron codificados.
  • Recibir datos en formato codificado y reenviarlos.

En particular, queremos admitir el caso de uso del reenvío de contenido multimedia sin fallas provenientes de varias conexiones de intercambio de tráfico redundantes que proporcionan las mismas cargas útiles de contenido multimedia, pero con metadatos diferentes.

Regístrate para la prueba de origen de RTCEncodedFrameSetMetadata.

Bajas y eliminaciones

Esta versión de Chrome presenta las bajas y las eliminaciones que se indican a continuación. Visita ChromeStatus.com para ver una lista de las bajas planificadas, las bajas actuales y las 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 no estándares de appearance con el uso más bajo. Una vez desactivada la función, la propiedad de apariencia se ignorará si utiliza esa palabra clave como valor. Las palabras clave que se desactivarán 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 deberían admitir palabras clave appearance estándares, quitaremos las palabras clave appearance (y -webkit-appearance) que no sean 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 como parte de este parche que se usa para permitir la vertical <input type=range>. Se quitará una vez que se adopte por completo el modo de escritura vertical de los controles de formulario.

Antes de desactivarse, si se usa alguna de las palabras clave anteriores, se mostrará una advertencia de la consola, pero la palabra clave se reconocerá como un valor válido.