Chrome 142

Data de lançamento da versão estável:28 de outubro de 2025

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

CSS e interface

Posicionamento absoluto para o elemento ::view-transition

As transições de visualização usam uma pseudosubárvore do elemento, com ::view-transition sendo a raiz dessa transição. Antes, o elemento ::view-transition era especificado para ter position: fixed. O grupo de trabalho do CSS decidiu fazer esse position: absolute, e o Chrome agora reflete essa mudança.

Essa mudança não deve ser perceptível porque o bloco de contenção desse elemento permanece o bloco de contenção de snapshot no caso absoluto ou fixo. A única diferença perceptível está em getComputedStyle.

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

Propriedade activeViewTransition no documento

A API View Transitions permite que os desenvolvedores iniciem transições visuais entre diferentes estados. O ponto de entrada principal do SPA é startViewTransition(), que retorna um objeto de transição. Esse objeto contém várias promessas e funcionalidades para rastrear o progresso da transição e permite manipular transições, por exemplo, pulando ou modificando os tipos delas.

A partir do Chrome 142, os desenvolvedores não precisam mais armazenar esse objeto. Uma propriedade document.activeViewTransition representa esse objeto ou null se nenhuma transição estiver em andamento.

Isso também se aplica a transições de MPA, em que o objeto está disponível apenas por eventos pageswap e pagereveal. Nessa atualização, document.activeViewTransition é definido como esse objeto durante a transição.

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

Pseudoclasses :target-before e :target-after

Essas pseudoclasses correspondem a marcadores de rolagem que estão antes ou depois do marcador ativo (correspondendo a :target-current) no mesmo grupo de marcadores de rolagem, conforme determinado pela ordem de árvore plana:

  • :target-before: corresponde a todos os marcadores de rolagem que precedem o marcador ativo na ordem da árvore plana dentro do grupo.
  • :target-after: corresponde a todos os marcadores de rolagem que seguem o marcador ativo na ordem da árvore plana dentro do grupo.

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

Sintaxe de intervalo para consultas de contêiner de estilo e if()

O Chrome aprimora as consultas de estilo CSS e a função if() adicionando suporte à sintaxe de intervalo.

Ela estende as consultas de estilo além da correspondência exata de valores (por exemplo, style(--theme: dark)). Os desenvolvedores podem usar operadores de comparação (como > e <) para comparar propriedades personalizadas, valores literais (por exemplo, 10px ou 25%) e valores de funções de substituição, como attr() e env(). Para uma comparação válida, os dois lados precisam ser resolvidos para o mesmo tipo de dados. Ele é limitado aos seguintes tipos numéricos: <length>, <number>, <percentage>, <angle>, <time>, <frequency> e <resolution>.

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

Invocadores de interesse (atributo interestfor)

O Chrome adiciona um atributo interestfor aos elementos <button> e <a>. Esse atributo adiciona comportamentos de "interesse" ao elemento. Quando um usuário "mostra interesse" no elemento, as ações são acionadas no elemento de destino, por exemplo, mostrando um popover. O user agent detecta quando um usuário "mostra interesse" no elemento usando métodos como manter o ponteiro sobre ele, pressionar teclas de atalho especiais no teclado ou tocar e manter pressionado o elemento em telas sensíveis ao toque. Quando o interesse é demonstrado ou perdido, um InterestEvent é acionado no destino, que tem ações padrão para popovers, como mostrar e ocultar o popover.

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

Paridade entre dispositivos móveis e computadores para modos de renderização de elementos selecionados

Ao usar os atributos size e multiple, o elemento <select> pode ser renderizado como uma caixa de listagem na página ou um botão com um pop-up. No entanto, esses modos não têm disponibilidade consistente no Chrome para dispositivos móveis e computadores. A renderização da caixa de listagem na página não está disponível em dispositivos móveis, e um botão com um pop-up não está disponível em computadores quando o atributo multiple está presente.

Essa atualização adiciona a caixa de listagem para dispositivos móveis e um pop-up de seleção múltipla para computadores. Além disso, garante que as ativações com os atributos size e multiple resultem no mesmo modo de renderização em dispositivos móveis e computadores. As mudanças são resumidas da seguinte forma:

  • Quando o atributo size tem um valor maior que 1, a renderização na página é sempre usada. Antes, os dispositivos móveis ignoravam isso.
  • Quando o atributo multiple é definido sem o atributo size, a renderização na página é usada. Antes, os dispositivos móveis usavam um pop-up em vez de uma caixa de listagem na página.
  • Quando o atributo multiple é definido com size=1, um pop-up é usado. Os dispositivos desktop usavam uma caixa de listagem na página.

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

Suporte ao atributo download no elemento <a> do SVG

Esse recurso introduz suporte ao atributo de download na interface SVGAElement no Chromium, alinhando-se à especificação SVG 2. O atributo "download" permite que os autores especifiquem que o destino de um hiperlink SVG deve ser baixado em vez de acessado, espelhando o comportamento já compatível com HTMLAnchorElement. Essa melhoria promove a interoperabilidade entre os principais navegadores e garante um comportamento consistente entre os elementos de link HTML e SVG, melhorando a experiência do desenvolvedor e as expectativas do usuário.

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

Gráficos

WebGPU: recurso primitive_index

A WebGPU adiciona um novo recurso opcional que expõe um novo sombreador WGSL integrado, primitive_index. Ele fornece um índice por primitiva para shaders de fragmentos em hardware compatível, semelhante aos recursos integrados vertex_index e instance_index. O índice primitivo é útil para técnicas gráficas avançadas, como geometria virtualizada.

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

WebGPU: formatos de textura tier1 e tier2

Estenda o suporte a formatos de textura de GPU com recursos como renderização de anexo, fusão, multiamostragem, resolução e storage_binding.

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

APIs Web

FedCM: suporte para mostrar origens de iframe de terceiros na interface

Antes do Chrome 142, a FedCM sempre mostrava o site de nível superior na interface.

Isso funciona bem quando o iframe é conceitualmente primário. Por exemplo, foo.com pode ter um iframe foostatic.com, que não é significativo para o usuário.

Mas se o iframe for de terceiros, é melhor mostrar a origem dele na interface para que os usuários entendam melhor com quem estão compartilhando as credenciais. Por exemplo, um editor de fotos pode ser incorporado a um web app de publicação de livros e permitir que os usuários acessem arquivos armazenados anteriormente com o editor de fotos. Esse recurso já está disponível.

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

Validação mais rigorosa do token MIME *+json para módulos JSON

Rejeita respostas de script do módulo JSON cujo tipo ou subtipo do tipo MIME contém pontos de código de token não HTTP (por exemplo, espaços) quando correspondidos com *+json. Isso está alinhado com a especificação de MIME Sniffing e outros mecanismos. Ela faz parte da área de foco dos módulos Interop2025.

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

Bias contextual da API Web Speech

Com esse recurso, os sites podem oferecer suporte à otimização contextual para reconhecimento de fala adicionando uma lista de frases de reconhecimento à API Web Speech.

Os desenvolvedores podem fornecer uma lista de frases e atualizá-las para aplicar uma polarização aos modelos de reconhecimento de fala em favor dessas frases. Isso ajuda a melhorar a acurácia e a relevância do reconhecimento de fala personalizado e específico do domínio.

Entrada do ChromeStatus.com | Especificação

Sessão de mídia: adicionar motivo aos detalhes da ação enterpictureinpicture

Adiciona enterPictureInPictureReason ao MediaSessionActionDetails enviado à ação enterpictureinpicture na API Media Session. Isso permite que os desenvolvedores distingam entre ações de enterpictureinpicture acionadas explicitamente pelo usuário (por exemplo, em um botão no user agent) e ações de enterpictureinpicture acionadas automaticamente pelo user agent devido à oclusão do conteúdo.

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

Segurança

Restrições de acesso à rede local

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

Uma solicitação de rede local é qualquer solicitação de um site público a um endereço IP local ou loopback, ou de um site local (por exemplo, uma intranet) a loopback. Restringir a capacidade dos sites de fazer essas solicitações por trás de uma permissão reduz o risco de ataques de falsificação de solicitação entre sites em dispositivos de rede local, como roteadores, e diminui a capacidade dos sites de usar essas solicitações para criar uma impressão digital da rede local do usuário.

Essa permissão é restrita a contextos seguros. Se concedidas, as permissões também relaxam o bloqueio de conteúdo misto para solicitações de rede local, já que muitos dispositivos locais não conseguem obter certificados TLS confiáveis publicamente por vários motivos.

Saiba mais em Nova solicitação de permissão para acesso à rede local.

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

Entrada do usuário

Eventos interoperáveis pointerrawupdate expostos apenas em contextos seguros

A especificação PointerEvents restringiu pointerrawupdate a contextos seguros em 2020, ocultando o disparo de eventos e os listeners de eventos globais de contextos não seguros. Com esse recurso, o Chrome vai corresponder à especificação atualizada e se tornar interoperável com outros navegadores importantes.

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

Ativação persistente do usuário em navegações de mesma origem iniciadas pelo renderizador

Esse recurso preserva o estado de ativação do usuário fixo depois que uma página navega para outra de mesma origem. A falta de ativação do usuário na página pós-navegação impede alguns casos de uso, como mostrar teclados virtuais no foco automático. Isso tem sido um bloqueador para os desenvolvedores que querem criar MPAs em vez de SPAs.

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

Testes de origem

Credenciais de sessões vinculadas ao dispositivo

Uma maneira de os sites vincularem uma sessão a um único dispositivo com segurança.

Ela permite que os servidores tenham uma sessão vinculada com segurança a um dispositivo. O navegador renova a sessão periodicamente, conforme solicitado pelo servidor, com prova de posse de uma chave privada.

Teste de origem | Credenciais de sessões vinculadas ao dispositivo: o segundo teste de origem começa | Entrada do ChromeStatus.com | Especificação