Chrome 141

Data de lançamento da versão estável:30 de setembro de 2025

Salvo indicação em contrário, as mudanças a seguir se aplicam à versão 141 do canal estável do Chrome para Android, ChromeOS, Linux, macOS e Windows.

CSS

Enumeração de propriedades personalizadas em getComputedStyle()

Ao iterar sobre window.getComputedStyle(element) no Chrome, havia um bug em que ele se esquece de incluir propriedades personalizadas definidas no elemento. Portanto, length() no objeto retornado não considera o número de propriedades personalizadas definidas. Esse bug foi corrigido no Chrome 141, alinhando o Chrome com o Firefox e o Safari.

Entrada do ChromeStatus.com | Especificação

DOM

API ARIA Notify

O ariaNotify fornece uma API JavaScript que permite que os criadores de conteúdo informem a um leitor de tela o que ler.

ariaNotify melhora a confiabilidade e o controle do desenvolvedor em comparação com as regiões ativas do ARIA, permitindo o anúncio de mudanças não vinculadas a atualizações do DOM. Isso permite experiências de acessibilidade mais consistentes e ergonômicas em aplicativos da Web dinâmicos. O uso de iframes desse recurso pode ser controlado com a política de permissões "aria-notify".

Bug de rastreamento nº 326277796 | Entrada do ChromeStatus.com | Especificação

Atualizar hidden=until-found e o algoritmo de revelação de ancestrais de detalhes

A especificação passou por algumas pequenas mudanças recentemente nos algoritmos de revelação para elementos hidden=until-found e de detalhes para evitar que o navegador fique preso em um loop infinito. Essas mudanças agora estão sendo lançadas no Chrome.

Bug de rastreamento nº 433545121 | Entrada do ChromeStatus.com | Especificação

JavaScript

Alinhar as implementações sobre quando as estatísticas de RTP devem ser criadas

Os objetos de estatísticas RTP, do tipo "outbound-rtp" ou "inbound-rtp" neste caso, representam um stream WebRTC. O identificador desse fluxo é o SSRC (um número). Esse recurso está alinhado à especificação de quando essas estatísticas devem ser criadas.

Bug de rastreamento nº 406585888 | Entrada do ChromeStatus.com | Especificação

Mídia

Ajude restrictOwnAudio

A propriedade restrictOwnAudio é uma propriedade restrita de plataformas de exibição capturadas. Ele muda o comportamento do áudio do sistema em uma superfície de exibição capturada. A restrição restrictOwnAudio só tem efeito se a superfície de exibição capturada incluir áudio do sistema. Caso contrário, ela não terá impacto.

Entrada do ChromeStatus.com | Especificação

windowAudio para getDisplayMedia()

Estende DisplayMediaStreamOptions para getDisplayMedia() com uma opção windowAudio. Essa nova opção permite que os aplicativos da Web indiquem ao user agent se o usuário deve ter a opção de compartilhar áudio quando uma janela é selecionada. windowAudio pode ser definido como "excluir", "sistema" ou "janela" com base na preferência do aplicativo.

Um aplicativo da Web configurado para captura de áudio, mas que quer limitar a captura de áudio do sistema quando uma janela é selecionada, precisa definir windowAudio: "exclude".

Entrada do ChromeStatus.com | Especificação

Diversos

Suporte a width e height como atributos de apresentação em elementos <svg> aninhados

Esse recurso permite aplicar width e height como atributos de apresentação em elementos <svg> aninhados usando marcação SVG e CSS. Essa abordagem dupla oferece ainda mais flexibilidade aos desenvolvedores, permitindo que eles gerenciem e estilizem elementos SVG com mais eficiência em designs complexos.

Bug de rastreamento nº 40409865 | Entrada do ChromeStatus.com | Especificação

API Digital Credentials (compatibilidade com apresentação)

Os sites recuperam credenciais de apps de carteira digital para dispositivos móveis usando vários mecanismos, como processadores de URL personalizados e leitura de QR code. Esse recurso permite que sites solicitem informações de identidade de carteiras usando o sistema IdentityCredential CredMan do Android. Ele é extensível para oferecer suporte a vários formatos de credenciais, como ISO mDoc e credencial verificável do W3C, e permite o uso de vários apps de carteira. Essa atualização adiciona mecanismos para ajudar a reduzir o risco de abuso em grande escala no ecossistema da identidade real.

Bug de rastreamento nº 40257092 | Entrada do ChromeStatus.com | Especificação

Normalmente, quando navigateEvent.intercept() é chamado, a navegação interceptada é confirmada (e, portanto, os URLs são atualizados) assim que o NavigateEvent termina o envio.

Esse recurso adiciona uma opção precommitHandler a navigateEvent.intercept(), semelhante a handler. Ele adia o commit até que esse manipulador (e todos os outros manipuladores de pré-commit) sejam resolvidos, e permite que o manipulador mude o URL, as informações, o status e o comportamento de manipulação do histórico (push/replace) da navegação.

Rastreamento do bug nº 440190720 | Entrada do ChromeStatus.com | Especificação

FedCM: campos alternativos na seleção de contas

Adiciona suporte para números de telefone e nomes de usuário, além de ou em vez do nome completo e endereço de e-mail de um usuário como identificadores para distinguir contas no seletor de contas. Além disso, disponibiliza esses novos campos para que os sites afetem o texto da declaração.

Bug de rastreamento nº 382086282 | Entrada do ChromeStatus.com | Especificação

Rede / Conectividade

Suporte a No-Vary-Search para o cache de disco HTTP

Permite que o cache de disco HTTP use o cabeçalho de resposta No-Vary-Search para compartilhar uma entrada de cache entre URLs que diferem apenas nos parâmetros de consulta.

Os desenvolvedores podem usar No-Vary-Search para especificar parâmetros de consulta que não têm impacto na experiência do usuário. Um exemplo comum é um ID usado para rastrear conversões. O suporte a esse cabeçalho no cache de disco HTTP significa que, se o usuário voltar à mesma página sem o ID de conversão, ele poderá ser usado ou revalidado no cache em vez de ser buscado do zero na rede.

Antes, o suporte a No-Vary-Search era enviado para o cache de pré-busca de navegação, regras de especulação de pré-busca e pré-renderização e pré-renderização. Com esse lançamento, ele fica disponível para qualquer recurso que use o cache de disco HTTP.

Bug de rastreamento nº 382394774 | Entrada do ChromeStatus.com | Especificação

Off-line / Armazenamento

IndexedDB getAllRecords() e opção de direção para getAll() e getAllKeys()

Esse recurso adiciona o método getAllRecords() ao IDBObjectStore e IDBIndex do IndexedDB. Ele também adiciona um parâmetro de direção a getAll() e getAllKeys(). Essa funcionalidade permite que determinados padrões de leitura sejam significativamente mais rápidos em comparação com a alternativa atual de iteração com cursores. Em um teste, uma carga de trabalho de uma propriedade da Microsoft mostrou uma melhoria de 350 ms.

O método getAllRecords() combina getAllKeys() e getAll() enumerando as chaves primárias e os valores ao mesmo tempo. Para um IDBIndex, getAllRecords() também fornece a chave de índice do registro, além da chave primária e do valor.

Bug de rastreamento nº 40746016 | Entrada do ChromeStatus.com | Especificação

Desempenho

Regras de especulação: melhorias na ansiedade "eager" para computador

No computador, as regras de especulação de ansiedade "ansiosas" agora acionam pré-busca e pré-renderização quando os usuários passam o cursor sobre um link por um tempo menor do que o tempo de passar o cursor "moderado".

O comportamento anterior, de iniciar a pré-busca e a pré-renderização assim que possível, era o mesmo que o nível de ansiedade "imediato". Esse novo comportamento é mais útil porque reflete melhor a intenção do autor de ser mais ansioso do que "moderado" e menos ansioso do que "imediato".

Entrada do ChromeStatus.com | Especificação

Segurança

Política rígida de mesma origem para a API Storage Access

Ajusta a semântica da API Storage Access para seguir estritamente a política de mesma origem em relação à segurança. Ou seja, o uso de document.requestStorageAccess() em um frame apenas anexa cookies às solicitações para a origem do iframe (não ao site) por padrão.

Bug de rastreamento nº 379030052 | Entrada do ChromeStatus.com | Especificação

Integridade com base em assinaturas

Esse recurso oferece aos desenvolvedores da Web um mecanismo para verificar a origem dos recursos de que dependem, criando uma base técnica para a confiança nas dependências de um site. Em resumo: os servidores podem assinar respostas com um par de chaves Ed25519, e os desenvolvedores da Web podem exigir que o user agent verifique a assinatura usando uma chave pública específica. Isso oferece uma adição útil às verificações baseadas em URL oferecidas pela Política de Segurança de Conteúdo, por um lado, e às verificações baseadas em conteúdo da Integridade de Subrecursos, por outro.

Bug de rastreamento nº 375224898 | Entrada do ChromeStatus.com | Especificação

WebRTC

Transformação codificada do WebRTC (V2)

Essa API permite o processamento de mídia codificada que flui por um RTCPeerConnection. O Chrome lançou uma versão inicial dessa API em 2020. Desde então, a especificação mudou, e outros navegadores lançaram a versão atualizada (Safari em 2022 e Firefox em 2023). Esse lançamento alinha o Chrome com a especificação atualizada como parte do Interop 2025.

Este lançamento não inclui o generateKeyFrame method, que ainda está em discussão.

Bug de rastreamento nº 354881878 | Entrada do ChromeStatus.com | Especificação

echoCancellationMode para getUserMedia()

Estende o comportamento echoCancellation do dicionário MediaTrackConstraints. Ele aceitava true ou false e agora também aceita os valores "all" e "remote-only". Isso permite que os clientes modifiquem o comportamento de cancelamento de eco aplicado às faixas de áudio recebidas dos microfones, controlando a quantidade de reprodução do sistema do usuário (tudo ou apenas o áudio recebido de PeerConnections) removida do sinal do microfone.

Entrada do ChromeStatus.com | Especificação

Somente ChromeOS gerenciado

Política de permissões para a API Device Attributes

A nova política de permissões permite restringir o acesso à API Device Attributes, que está disponível apenas para apps da Web de quiosque e Apps Isolados da Web instalados por política, ambos apenas em dispositivos ChromeOS gerenciados.

Além disso, o recurso é controlado pelas configurações de conteúdo. Duas novas políticas foram introduzidas: DeviceAttributesBlockedForOrigins e DefaultDeviceAttributesSetting, para complementar a DeviceAttributesAllowedForOrigins, que já existia. O recurso é ativado por padrão para apps da Web de quiosque instalados por política e Apps Isolados da Web instalados por política em dispositivos ChromeOS gerenciados.

Entrada do ChromeStatus.com | Especificação

Testes de origem

Restrições de acesso à rede local

O Chrome 141 restringe a capacidade de fazer solicitações para a rede local do usuário, protegida por uma solicitação de permissão.

Esse teste de origem permite temporariamente o acesso a recursos em redes locais para originar de contextos não seguros. Assim, os desenvolvedores terão mais tempo para migrar as solicitações de acesso à rede local para um contexto seguro.

Teste de origem | Bug de rastreamento nº 394009026 | Entrada do ChromeStatus.com | Especificação

API Proofreader

Uma API JavaScript para revisar o texto de entrada com correções sugeridas, com o suporte de um modelo de linguagem de IA.

Teste de origem | Bug de rastreamento nº 403313556 | Entrada do ChromeStatus.com | Especificação

Estender CSP script-src (também conhecido como script-src-v2)

Esse recurso adiciona novas palavras-chave à diretiva script-src da Política de Segurança de Conteúdo (CSP). Isso adiciona dois novos mecanismos de lista de permissões baseados em hash: fontes de script baseadas em hashes de URLs e conteúdo de funções semelhantes a eval() e eval(). Às vezes, ele é chamado de script-src-v2, embora seja compatível com versões anteriores do script-src e use a mesma diretiva.

A extensão dos hashes para cobrir hashes de URL e eval() permite que os desenvolvedores definam políticas de segurança razoavelmente rigorosas, permitindo scripts por hashes mesmo quando o conteúdo do script está sujeito a mudanças frequentes, e conteúdo conhecido como seguro de eval() sem permitir o uso irrestrito de eval() de forma geral.

As novas palavras-chave substituem o script-src baseado no host quando fornecidas. Isso permite que um único cabeçalho seja compatível com navegadores que implementam ou não as novas palavras-chave.

Bug de rastreamento nº 392657736 | Entrada do ChromeStatus.com | Especificação

Descritores personalizados do WebAssembly

Permite que o WebAssembly armazene dados associados a tipos no nível da origem de maneira mais eficiente em novos objetos "descritor personalizado". Esses descritores personalizados podem ser configurados com protótipos para os objetos WebAssembly desse tipo no nível da origem. Isso permite instalar métodos na cadeia de protótipos de um objeto WebAssembly e chamá-los diretamente do JavaScript usando a sintaxe normal de chamada de método. Os protótipos e métodos podem ser configurados de forma declarativa usando uma função integrada importada.

Teste de origem | Entrada do ChromeStatus.com | Especificação

Descontinuações e remoções

Parar de enviar o cabeçalho Purpose: prefetch de pré-buscas e pré-renderizações

Agora que as pré-buscas e pré-renderizações estão usando o cabeçalho Sec-Purpose para pré-buscas e pré-renderizações, vamos remover o cabeçalho legado Purpose: prefetch que ainda é transmitido. Isso vai ficar atrás de uma flag de recurso/ kill switch para evitar problemas de compatibilidade.

Isso será limitado à pré-busca e pré-renderização de regras de especulação, e não padrão do Chromium.

Bug de rastreamento nº 420724819 | Entrada do ChromeStatus.com | Especificação