Notas de versão da plataforma Web do Microsoft Edge 138 (junho de 2025)

A seguir estão os novos recursos e atualizações da plataforma da Web no Microsoft Edge 138, que será lançado em 26 de junho de 2025.

Para se manter atualizado e obter os recursos mais recentes da plataforma Web, baixe um canal de visualização do Microsoft Edge (Beta, Dev ou Canary); vá para Torne-se um Microsoft Edge Insider.

Conteúdo detalhado:

Microsoft Edge DevTools

Veja as novidades no DevTools (Microsoft Edge 138).

WebView2

Consulte o SDK da versão 1.0.3351.48, para o Runtime 138 (1º de julho de 2025) nas notas de versão arquivadas do SDK do WebView2.

Recursos da plataforma Web

Recursos CSS

palavra-chave de dimensionamento CSS stretch

A stretch palavra-chave, para propriedades de dimensionamento CSS, como width e height, permite que um elemento cresça para preencher exatamente o espaço disponível do bloco que o contém. A stretch palavra-chave de dimensionamento é semelhante ao valor 100%, exceto que o tamanho resultante é aplicado à caixa de margem do elemento, em vez de ser aplicado à caixa indicada por box-sizing.

A stretch palavra-chave permite que o elemento mantenha suas margens, enquanto ainda é o maior possível. Esta é uma versão sem prefixo de -webkit-fill-available.

Veja também:

CSS abs() e sign() funções

A abs(A) função retorna o valor absoluto de A, do mesmo tipo da entrada:

  • Se o valor numérico de A for positivo ou 0⁺, abs(A)resulta A.
  • Caso contrário, abs(A) gera -1 * A.

A sign(A) função retorna:

  • -1 se o valor numérico de A for negativo.
  • +1 se o valor numérico de A for positivo.
  • 0⁺ se o valor numérico de A for 0⁺.
  • 0⁻ se o valor numérico de A for 0⁻.

O tipo CSS de retorno é <number>, tornado consistente com o tipo do cálculo de entrada.

Veja também:

Variável de ambiente CSS para escala de fonte no nível do sistema operacional

A preferred-text-scale variável de ambiente CSS expõe a escala de fonte preferencial de um usuário ao CSS.

Anteriormente, não era prático para uma página detectar se o usuário havia alterado seu tamanho de fonte preferido por meio das preferências do sistema operacional.

Veja também:

CSS sibling-index() e sibling-count() funções

sibling-index() e sibling-count() podem ser usados como inteiros em valores de propriedade CSS para estilizar elementos com base em sua posição entre os elementos irmãos ou no número total de irmãos. Essas funções podem ser usadas dentro calc() de expressões ou podem ser usadas diretamente como valores inteiros.

Por exemplo, você pode usar a sibling-index() função dentro de uma calc() expressão para definir a margem esquerda de um item de lista com base em sua posição entre seus irmãos:

li {
  margin-inline-start: calc(1rem * sibling-index());
}

Veja também:

Progresso da interpolação: Função CSS progress()

A progress() função CSS math retorna um <number> que representa a posição de um valor entre um valor inicial de progresso e um valor final de progresso.

progress() pode ser útil em casos como tipografia de fluidos.

Veja também:

APIs da Web

Visualizações do desenvolvedor da API de Assistência à Escrita e Prompt

A API de prompt agora está disponível como uma visualização do desenvolvedor nos canais Edge Canary e Dev.

As seguintes APIs de Assistência de Gravação agora estão disponíveis como visualizações do desenvolvedor nos canais Edge Canary e Dev:

  • API do gravador
  • API do Reescritor

A partir do Microsoft Edge 138, a API de Assistência de Gravação a seguir foi enviada normalmente; Está disponível para todos os desenvolvedores e não é mais uma visualização do desenvolvedor:

  • API do resumidor

Essas APIs fornecem acesso a um pequeno e poderoso modelo de linguagem, o Phi-4-mini, integrado ao navegador Edge.

Use essas APIs para experimentar a engenharia de prompt, resumir e modificar conteúdo ou gerar texto.

Veja também:

Novo prefetchCache e prerenderCache valores para o Clear-Site-Data cabeçalho

O Clear-Site-Data cabeçalho HTTP agora suporta os valores new prefetchCache and prerenderCache .

Anteriormente, a única maneira de limpar o cache de pré-busca e pré-renderização era usando cache o valor do Clear-Site-Data cabeçalho HTTP. Com o aumento da adoção da API Speculation Rules, os desenvolvedores precisam de uma maneira de limpar especificamente o cache de pré-busca ou pré-renderização, ou ambos, sem interromper outras informações da sessão, como histórico ou cookies.

Veja também:

Metadados de orientação de quadro de vídeo em WebCodecs

Várias interfaces de vídeo relacionadas em WebCodecs agora têm rotation e flip valores:

  • A VideoFrame interface agora pode criar instâncias de objeto com valores e flip arbitráriosrotation.
  • O VideoDecoderConfig objeto agora tem rotation campos e flip que são emitidos automaticamente em objetos decodificados VideoFrame .
  • A VideoEncoder classe agora tem um mecanismo para passar rotation e flip informações de encode() para o VideoDecoderConfig que é emitido como parte de EncodedVideoChunkMetadata.

Anteriormente, os desenvolvedores não tinham como saber quando recebiam quadros de vídeo com orientação não padrão.

Veja também:

Novo is_top_level e visibility_state campos em relatórios da API de Relatório de Falhas

Os relatórios de falha enviados aos pontos de extremidade padrão pela API de Relatório de Falhas agora têm os campos e visibility_state stringis_top_level.

Os is_top_level campos and visibility_state são informações contextuais sobre quadros com falha em um relatório de falha.

Veja também:

Não permitir a pré-renderização de texto sem formatação por HTTP

Para tornar a pré-renderização consistente com a pré-busca, a pré-renderização de texto sem formatação agora só funciona em HTTPS.

Anteriormente, a pré-renderização de texto sem formatação era permitida em conexões HTTP e HTTPS.

Veja também:

Escape < e > em atributos HTML ao serializar

Os < caracteres e > nos valores de atributo do elemento HTML agora são escapados ao serializar HTML. Isso reduz o risco de ataques XSS de mutação, que ocorrem quando o valor de um atributo é interpretado como um token de marca de início após ser serializado e analisado novamente.

Integrity-Policy para integridade de scripts de sub-recursos

O novo Integrity-Policy cabeçalho permite que você declare que todos os recursos de um determinado tipo precisam ser verificados quanto à integridade. Se um recurso do tipo especificado for tentado a ser carregado sem metadados de integridade, essa tentativa falhará e produzirá um relatório de violação.

Veja também:

Cota de armazenamento relatada previsível

A cota de armazenamento relatada pelo método do StorageManager para sites que não têm permissões de armazenamento ilimitadas estimate() agora é a mesma em todos os modos de navegação.

Isso reduz um problema em que anteriormente era possível detectar o modo de navegação de um usuário por meio da cota de armazenamento relatada, porque o espaço de armazenamento disponibilizado é significativamente menor no modo InPrivate do que no modo normal.

A cota relatada agora é igual ao uso de armazenamento atual mais o valor mínimo entre 10 GiB e o tamanho de disco do dispositivo, arredondado para o 1 GiB mais próximo, em todos os modos de navegação, para sites com permissões de armazenamento limitadas.

Os sites com permissões de armazenamento ilimitadas não são afetados.

Veja também:

pushsubscriptionchange evento após nova assinatura

O pushsubscriptionchange evento é acionado por um trabalho de serviço quando uma origem recebe novamente a permissão de notificação, depois que a assinatura de push anterior da origem foi revogada devido a uma alteração de permissão (de granted para deny ou default).

O evento é acionado com um arquivo vazio oldSubscription e newSubscription.

Veja também:

Regras de especulação: target_hint campo

A sintaxe para regras de especulação foi estendida para permitir que você especifique o target_hint campo. O target_hint campo fornece uma dica para o navegador saber onde um destino pré-renderizado será exibido, como em uma nova guia ou janela.

Por exemplo, quando _blank é especificado como uma dica, uma página pré-renderizada pode ser renderizada em uma janela aberta por window.open().

target_hint Atualmente dá suporte às _self cadeias de caracteres AND _blank . Se a dica não for especificada, ela será tratada como _self.

O target_hint campo não tem efeito na pré-busca de regras de especulação.

Veja também:

API de enumeração de segmentos do visor

A API de enumeração de segmentos da janela de visualização permite que você adapte o layout do site para direcionar dispositivos dobráveis.

Um segmento da viewport define a posição e as dimensões de uma região logicamente separada da viewport. Um segmento de viewport é criado quando a viewport é dividida por um ou mais recursos de hardware (como uma dobra ou uma dobradiça entre exibições separadas) que atuam como um divisor.

Os segmentos são as regiões da viewport que podem ser tratadas como logicamente distintas.

Veja também:

Extensões de escopo do aplicativo Web

O novo "scope_extensions" campo de manifesto do aplicativo Web permite que um aplicativo Web estenda seu escopo para outras origens.

Exemplo de uso:

{
  "name": "Example",
  "display": "standalone",
  "start_url": "/index.html",
  "scope_extensions": [
    {"type" : "origin", "origin" : "https://example.com"}
  ]
}

O scope_extensions campo permite que um site que controla vários subdomínios e domínios de nível superior seja apresentado como um único aplicativo Web.

O scope_extensions campo requer origens listadas para confirmar a associação com o aplicativo Web usando um arquivo de .well-known/web-app-origin-association configuração:

{
  "https://sample-app.com/": {
    "scope": "/"
  }
}

Veja também:

Recursos removidos

A remoção de intervalo assíncrono para Extensões de Fonte de Mídia agora gera exceções

As seguintes alterações foram feitas na especificação Media Source Extensions, para não permitir comportamentos definidos de forma ambígua envolvendo remoções de intervalo assíncronas:

  • SourceBuffer.abort() não aborta SourceBuffer.remove() mais operações.
  • A configuração MediaSource.duration não pode mais truncar a mídia atualmente armazenada em buffer.

Embora essas mudanças tenham sido feitas há muito tempo e o Safari e o Firefox já as tenham implementado, o Chromium ainda não o havia feito. Exceções agora serão lançadas em ambos os casos.

Veja também:

Remover o fallback automático do SwiftShader

Anteriormente, se um contexto WebGL não pudesse ser criado com a GPU disponível, o Chromium retornaria automaticamente ao uso do renderizador de software SwiftShader. Esse comportamento de fallback automático agora é removido e a criação de contexto do WebGL agora falhará em vez de voltar para SwiftShader.

O SwiftShader apresenta riscos de segurança e leva a uma experiência de usuário ruim ao voltar de um WebGL com suporte de GPU de alto desempenho para uma implementação com suporte de CPU.

O SwiftShader continua sendo uma ferramenta útil para fazer testes headless em um site. Esse caso de uso ainda tem suporte ao aceitar, o que você pode fazer executando o Microsoft Edge com o --enable-unsafe-swiftshader argumento de linha de comando.

Veja também:

Avaliações de origem

A seguir estão novas APIs experimentais que você pode experimentar em seu próprio site ativo por um tempo limitado.

Para saber mais sobre avaliações de origem, consulte Testar APIs e recursos experimentais usando avaliações de origem.

Para obter a lista completa de avaliações de origem disponíveis, consulte Avaliações de origem do Microsoft Edge.

Versões de avaliação de origem exclusivas do Microsoft Edge

Acesso do aplicativo Web ao LocalFolder

Expira em 31 de julho de 2025

Permite que PWAs instalados da Microsoft Store acessem o conteúdo do arquivo que foi armazenado anteriormente na pasta WinRT ApplicationData.LocalFolder por uma versão UWP anterior do mesmo aplicativo.

Extensões de escopo do aplicativo Web

Expira em 31 de agosto de 2025

scope_extensions é um novo membro do manifesto do aplicativo Web que permite que os aplicativos Web estendam seu escopo para outras origens.

As extensões de escopo permitem que aplicativos Web que dependem de vários subdomínios e domínios de nível superior sejam apresentados como um único aplicativo Web.

{
  "name": "Example app",
  "display": "standalone",
  "start_url": "/index.html",
  "scope_extensions": [
    {
      "type": "type",
      "origin": "https://example.com"
    }
  ]
}

As origens listadas no scope_extensions membro devem confirmar que estão associadas ao aplicativo Web, hospedando um arquivo de configuração chamado .well-known/web-app-origin-association. O arquivo deve listar a origem do aplicativo Web:

{
  "https://sample-app.com/": {
    "scope": "/"
  }
}
API de Informações de Aquisição

Expira em 30 de junho de 2025.

A API de Informações de Aquisição dá suporte à atribuição de aquisição 3P para PWAs que foram adquiridos por meio de uma loja de aplicativos ou diretamente do navegador.

Preterimento de Alto Contraste da MS

Expira em 9 de setembro de 2025.

Habilita a consulta de mídia CSS -ms-high-contrast herdada e a propriedade herdada -ms-high-contrast-adjust .

Consulte Preterindo o suporte para -ms-high-contrast e -ms-high-contrast-adjust.

AriaNotify API

Expira em 14 de outubro de 2025.

A API AriaNotify permite que os desenvolvedores digam diretamente a um leitor de tela o que ler. No cenário mais simples, chame ariaNotify("foo") o documento ou um elemento.

Consulte Criando uma Web mais acessível com o Aria Notify.

Observação

Partes desta página são modificações baseadas no trabalho criado e compartilhado por Chromium.org e usadas de acordo com os termos descritos na Licença Creative Commons Atribuição 4.0 Internacional.