Chrome 127

Data de lançamento estável:23 de julho de 2024

Salvo indicação em contrário, as seguintes mudanças se aplicam ao Chrome 127 Stable lançamento do canal para Android, ChromeOS, Linux, macOS e Windows.

CSS

CSS "font-size-adjust"

A propriedade CSS font-size-adjust oferece uma maneira de modificar o tamanho das letras minúsculas em relação ao tamanho das letras maiúsculas, o que define o tamanho geral da fonte. Essa propriedade é útil em situações em que pode ocorrer fallback de fonte.

O Chrome 127 inclui a sintaxe de dois valores para transmitir uma métrica de fonte e um valor.

Bug 451346 de rastreamento | Entrada de ChromeStatus.com | Especificação

Texto alternativo com vários argumentos no conteúdo gerado pelo CSS

A propriedade CSS content permite especificar um texto alternativo para acessibilidade com a seguinte sintaxe: css .has-before-content::before { content: url("cat.jpg") / "A cute cat"; }

Essa funcionalidade, em que o texto alternativo é fornecido por uma única string, já é compatível com o Chrome. No Chrome 127, o texto alternativo pode ser fornecido por um número arbitrário de elementos, que, além de strings, podem ser funções ou contadores attr(). Exemplo:

.has-before-content::before {
  content: url("cat.jpg") / "A cute " attr(data-animal);
}

Essa entrada de recurso não inclui a adição de suporte a contadores.

Entrada do ChromeStatus.com | Especificação

Suporte para a API View Transition em iframes

No Chrome 127, haverá transições simultâneas de visualização de um mesmo documento em um frame principal e um iframe de mesma origem.

Antes, executar uma transição de visualização usando o document.startViewTransition em um iframe de mesma origem não funcionaria se o frame principal estivesse executando uma transição ao mesmo tempo. A transição do iframe seria ignorada automaticamente. Agora, as duas transições serão executadas.

As transições de visualização em navegações entre documentos de mesma origem em um iframe também terão suporte.

Melhorias no ajuste do tamanho do texto

A propriedade text-size-adjust ajusta os tamanhos das fontes em dispositivos móveis. Valores diferentes de auto desativam os ajustes automáticos de tamanho de texto. Os valores percentuais aumentam o tamanho calculado do texto.

Isso torna o text-size-adjust mais consistente e funciona como um multiplicador direto do tamanho da fonte (e da altura da linha). As principais mudanças são:

  • text-size-adjust funciona com ou sem uma metajanela de visualização.
  • Valores diferentes de auto desativam todos os ajustes automáticos de tamanho de texto.
  • As porcentagens se aplicam diretamente, sem qualquer heurística.
  • Correção de bugs de layout.

Rastreamento do bug #340389272 | Entrada do ChromeStatus.com | Especificação

APIs Web

Configuração automática de conteúdo em tela cheia

Uma nova configuração de conteúdo "tela cheia automática" permite que os administradores corporativos permitam que os sites entrem no modo de tela cheia sem um gesto do usuário. Os usuários também podem permitir que Apps Isolados da Web usem esse recurso nas páginas de configurações do site.

Usado com a permissão de gerenciamento de janelas e os pop-ups desbloqueados, isso permite o uso de recursos valiosos de tela cheia:

  • Abra um pop-up em tela cheia em outra tela com um gesto.
  • Mostre conteúdo em tela cheia em várias telas com um único gesto.
  • Mostre conteúdo em tela cheia em uma nova tela quando ela estiver conectada.
  • Troque janelas em tela cheia entre telas com um gesto.
  • Mostrar conteúdo em tela cheia após o consumo ou expiração do gesto do usuário.

Demonstração | Bug de rastreamento 1501130 | Entrada de ChromeStatus.com

WebGPU: atributo info do GPUAdapter

Adiciona um atributo de informações síncrono GPUAdapter para recuperar as mesmas informações sobre o adaptador físico que com o método assíncrono requestAdapterInfo() de GPUAdapter.

Rastreamento do bug #335383516 | Entrada do ChromeStatus.com | Especificação

Mídia

Capítulo do vídeo em MediaMetadata

Agora é possível adicionar informações de capítulos individuais, como o título da seção, o carimbo de data/hora e uma imagem de captura de tela nos metadados de mídia. Isso permite que os usuários naveguem pelo conteúdo da mídia.

No momento, esse recurso só aparece nas notificações de mídia do ChromeOS, e não nos controles de mídia globais do navegador Chrome.

Demonstração | Entrada de ChromeStatus.com | Especificação

Documento picture-in-picture: propagar ativação do usuário

Isso faz com que as ativações do usuário em uma janela picture-in-picture de documento sejam usadas dentro da janela de abertura e vice-versa. Isso torna mais ergonômico o uso de APIs restritas à ativação do usuário, já que, muitas vezes, os manipuladores de eventos na janela de imagem em miniatura do documento são executados no contexto do abridor. Portanto, o contexto do abridor precisa ter acesso ao gesto do usuário.

Demonstração | Bug de rastreamento 331246719 | Entrada de ChromeStatus.com

JavaScript

Integridade do mapa de importação

No momento, os módulos ES importados não podem ter a integridade verificada e, portanto, não podem ser executados em ambientes que exigem integridade de subrecurso ou com diretivas CSP require-sri-for.

Esse recurso adiciona uma seção integrity para importar mapas, permitindo que os desenvolvedores mapeiem URLs de módulos ES para os metadados de integridade e garantam que eles sejam carregados apenas quando corresponderem aos hashes esperados.

Bug de rastreamento no 334251999 | Entrada de ChromeStatus.com

Eventos do instantâneo

Os eventos de ajuste permitem que os desenvolvedores detectem de maneira confiável quando o alvo de ajuste de um botão de rolagem é alterado e fazem ajustes de estilo conforme desejado.

Os pontos de ajuste de rolagem do CSS costumam ser usados como um mecanismo para criar componentes de seleção interativa de rolagem, em que a seleção é determinada com observadores de interseção do JavaScript e uma estimativa de fim da rolagem. Ao criar eventos integrados, o estado invisível se tornará útil, no momento certo e sempre correto.

Esse recurso adiciona dois eventos JavaScript: scrollsnapchange e scrollsnapchanging. O evento scrollsnapchange informa aos desenvolvedores, após a conclusão de uma operação de rolagem (incluindo a fixação), que o elemento para o qual um scroller está fixado mudou. O evento scrollsnapchanging dá aos desenvolvedores uma dica, durante uma operação de rolagem, de que o user agent pretende ajustar o contêiner de rolagem a um novo destino de ajuste com base na entrada de rolagem até o momento.

Privacidade

Agregar relatórios de depuração na API Attribution Reporting

Essa mudança é para que a API continue fornecendo alguma forma de informações de depuração após a descontinuação dos cookies de terceiros. Esse é um novo tipo de relatório que não está vinculado a cookies de terceiros e fornece informações de depuração semelhantes. Esse recurso permite que os autores de chamadas de API solicitem e recebam sinais de depuração de forma agregada. Esse recurso é muito semelhante aos relatórios agregados compatíveis com a API, mas os novos relatórios serão especificamente para indicadores de depuração.

Entrada ChromeStatus.com | Especificações

Acessibilidade

Contêineres de rolagem com foco no teclado

Esse recurso apresenta as seguintes mudanças:

Por padrão, os controles de rolagem podem ser focados por clique e programaticamente com foco. Por padrão, os controles de rolagem sem filhos focalizáveis são focalizáveis pelo teclado.

Essa é uma melhoria importante para ajudar a tornar os controles de rolagem e o conteúdo deles mais acessíveis a todos os usuários. Leia mais sobre os benefícios no post Scrollers com foco no teclado. Os controles de rolagem focalizáveis do teclado serão ativados por padrão a partir do Chrome 127. Se os sites precisarem de tempo para se ajustar a esse novo recurso, há algumas opções:

Rolagens focalizáveis do teclado | Bug de rastreamento 1040141 | Entrada de ChromeStatus.com | Especificação

Carregando

Suporte a No-Vary-Search para pré-renderização

Estende a compatibilidade com No-Vary-Search para pré-renderizar sobre o suporte anterior à pré-busca. Isso permite que uma entrada de pré-renderização corresponda mesmo se determinados parâmetros de consulta do URL mudarem. O cabeçalho de resposta HTTP No-Vary-Search declara que algumas ou todas as partes da consulta de um URL podem ser ignoradas para fins de correspondência de cache.

Bug 41494389 de rastreamento | Entrada de ChromeStatus.com | Especificação

Novos testes de origem

Transporte de dicionário de compactação com Brotli compartilhado e Zstandard compartilhado

Esse recurso adiciona suporte ao uso de respostas anteriores designadas, como um dicionário externo para respostas HTTP que compactam Brotli ou Zstandard.

Teste de origem | Demonstração | Bug de rastreamento 1413922 | Entrada ChromeStatus.com | Especificação

Suspensão do uso de cookies de terceiros

Pretendemos descontinuar e remover o acesso padrão a cookies de terceiros (também conhecidos como cookies entre sites), começando com um período de teste inicial de 1% no primeiro trimestre de 2024, seguido por uma desativação gradual planejada para começar no primeiro trimestre de 2025. Essa desativação está sujeita a questões de concorrência pendentes da Autoridade de Concorrência e Mercados do Reino Unido.

A eliminação gradual de cookies de terceiros é um esforço central da iniciativa do Sandbox de privacidade, que tem como objetivo reduzir de forma responsável o rastreamento entre sites na Web (e além disso) e oferecer suporte a casos de uso importantes com novas tecnologias.

Demo | Entrada do ChromeStatus.com | Especificação

Particionamento de APIs de armazenamento, workers de serviço e comunicação

No Chrome 115, as APIs de armazenamento, service workers e comunicação são particionadas em contextos de terceiros. Do Chrome 113 ao 126, os sites puderam participar de um teste de descontinuação para cancelar a partição e restaurar temporariamente o comportamento anterior do armazenamento, dos service workers e das APIs de comunicação.

A partir do Chrome 125, o armazenamento sem cookies na API Storage Access tem suporte, o que deve resolver a maioria dos casos de uso para armazenamento não particionado. Quando esses casos de uso não são atendidos, agora é possível solicitar uma renovação do teste de descontinuação de DisableThirdPartyStoragePartitioning para mais seis marcos para usuários do Chrome 127 a 132.

Consulte a postagem do blog sobre a renovação do teste de descontinuação do particionamento de armazenamento para mais informações.

Bug de rastreamento 1191114 | Entrada de ChromeStatus.com

Teste de descontinuação de contêineres de rolagem com foco no teclado

Esse recurso apresenta as seguintes mudanças:

Por padrão, os controles de rolagem podem ser focados por clique e programaticamente com foco. Os controles de rolagem sem filhos focalizáveis podem ser focalizados pelo teclado por padrão.

Tentamos implementar essas mudanças e descobrimos que um número limitado de sites tinha quebrado as expectativas em relação a alguns de seus componentes. Como resultado, tivemos que remover o recurso para evitar esse problema. Devido aos benefícios mencionados acima, o recurso começará a ser enviado em 127. Para dar mais tempo aos sites afetados para migrar os componentes, estamos iniciando um teste de descontinuação. Quando ativado, esse recurso desativa o KeyboardFocusableScrollers.

Período de teste do Origin | Controles de rolagem focalizáveis do teclado | Bug de rastreamento #1040141 | Entrada do ChromeStatus.com | Especificação

Descontinuações e remoções

Esta versão do Chrome apresenta as descontinuações e remoções listadas abaixo. Acesse ChromeStatus.com para conferir listas de descontinuações planejadas, descontinuações atuais e remoções anteriores.

Esta versão do Chrome remove três recursos.

Eventos de mutação

O suporte a eventos de mutação será desativado por padrão a partir do Chrome 127. A migração do código precisa ser feita antes dessa data para evitar falhas em sites. Se precisar de mais tempo, há algumas opções:

  • O teste de descontinuação de eventos de mutação (https://developer.chrome.com/origintrials/#/view_trial/919297273937002497) pode ser usado para reativar o recurso por um tempo limitado em um determinado site. Isso pode ser usado até o Chrome 134, até 25 de março de 2025.
  • A política corporativa MutationEventsEnabled também pode ser usada para a mesma finalidade até o Chrome 134.

Consulte a postagem do blog Descontinuação dos eventos de mutação para mais detalhes.

Bug de rastreamento 40268638 | Entrada de ChromeStatus.com | Especificação

Restringir "solicitações de rede privada" para subrecursos de sites públicos a contextos seguros

Exige que as solicitações de rede privada para subrecursos de sites públicos só possam ser iniciadas em um contexto seguro. Os exemplos incluem solicitações de Internet para intranet e solicitações de Internet para loopback.

Essa é a primeira etapa para implementar totalmente o Acesso de rede particular.

Bug de rastreamento 986744 | Entrada de ChromeStatus.com | Especificação

Remover a sintaxe antiga do estado personalizado de CSS

A pseudoclasse de estado personalizado CSS está sendo renomeada de :--foo para :state(foo). A nova sintaxe, :state(foo), foi ativada por padrão. Portanto, estamos removendo a sintaxe :--foo.

O Firefox e o Safari nunca implementaram a sintaxe antiga e enviaram a nova sintaxe.

Clientes corporativos que precisam de mais tempo podem usar a política CSSCustomStateDeprecatedSyntaxEnabled. Essa política será removida no Chrome 131.

Bug 41486953 de rastreamento | Entrada de ChromeStatus.com

Leitura adicional

Quer saber mais? Confira estes recursos adicionais.

Fazer o download do Google Chrome

Faça o download do Chrome para Android, computador ou iOS.