Publicado em 16 de outubro de 2024
A menos que indicado de outra forma, as mudanças a seguir se aplicam à versão mais recente do canal Beta do Chrome para Android, ChromeOS, Linux, macOS e Windows. Saiba mais sobre os recursos listados aqui nos links fornecidos ou na lista em ChromeStatus.com. O Chrome 131 está na versão Beta desde 16 de outubro de 2024. Faça o download da versão mais recente em Google.com para computadores ou na Google Play Store no Android.
CSS
Esta versão adiciona oito novos recursos do CSS.
Posicionamento de âncora do CSS: anchor-scope
A propriedade anchor-scope
permite limitar a visibilidade dos nomes de âncora a um
subárvore específica.
CSS font-variant-emoji
A propriedade CSS font-variant-emoji
oferece uma maneira de controlar os glifos de emoji coloridos (estilo emoji) e monocromáticos (estilo de texto). Isso também pode ser
feito adicionando um seletor de variação de emoji, especificamente U+FE0E para texto
e U+FE0F para emoji, após cada código de ponto de emoji.
Herança de destaque do CSS
Com a herança de destaque do CSS, as pseudoclasses de destaque do CSS, como
::selection
e ::highlight
, herdam as propriedades pela cadeia de
destaque de pseudoelementos, em vez da cadeia de elementos. O resultado é um modelo mais intuitivo
para a herança de propriedades em destaques.
Para saber mais, leia a postagem do blog Inheritance changes for CSS selection styling escrita por Stephen Chenney, da Igalia.
Melhorias na estrutura de estilo dos elementos <details>
e <summary>
Suporte a mais estilos de CSS para a estrutura dos elementos <details>
e <summary>
para permitir que esses elementos sejam usados em mais casos em que widgets de abertura
ou accordion são criados na Web. Especificamente, essa mudança
remove restrições que impediam a definição da propriedade display nesses
elementos e adiciona um pseudoelemento ::details-content
para estilizar o contêiner
da parte que se expande e se contrai.
@page
caixas de margem
Adicionamos suporte a caixas de margem de página ao imprimir um documento da Web ou exportá-lo como PDF.
As caixas de margem @page
permitem definir o conteúdo na área de margem de
uma página, por exemplo, para fornecer cabeçalhos e rodapés personalizados, em vez de usar
os cabeçalhos e rodapés integrados gerados pelo navegador.
Uma caixa de margem é definida usando uma regra at-rule dentro de uma regra @page
do CSS. A
aparência e o conteúdo de uma caixa de margem são especificados com propriedades CSS
dentro da regra at, incluindo a propriedade content
. Os contadores também são
compatíveis com a numeração de páginas. A especificação define dois nomes de contador
especiais: page
para o número de página atual e pages
para o número total de
páginas.
Sintaxe <string>
de suporte a @property
Compatibilidade com o nome do componente de sintaxe <string>
para propriedades personalizadas registradas.
Suporte a currentcolor na sintaxe de cores relativa
Permitir que cores relativas no CSS (usando a palavra-chave from
) usem currentcolor
como
base. Isso permite definir cores complementares, com base na
cor do texto de um elemento, para bordas, sombras ou planos de fundo desse elemento.
Esse recurso também inclui casos de uso em que as funções de cor são aninhadas com uma
dependência de currentcolor, por exemplo,
color-mix(in srgb, rgb(from currentcolor r g b), white))
ou
rgb(from rgb(from currentcolor 1 g b) b g r)
.
Suporte a recursos SVG externos para as propriedades clip-path
, fill
, stroke
e marker-*
Esse recurso adiciona suporte a referências externas para caminhos de clipe, marcadores e
servidores de pintura (para as propriedades "fill" e "stroke"). Por exemplo, clip-path: url("resources.svg#myPath")
.
APIs Web
API Direct Sockets
Permite que apps da Web isolados estabeleçam comunicações de protocolo de controle de transmissão direta (TCP) e de protocolo de datagrama do usuário (UDP) com dispositivos e sistemas de rede, bem como escutar e aceitar conexões de entrada.
O cabeçalho Speculation-Rules foi isento das restrições do CSP
Atualiza a integração entre as regras de especulação e o CSP para que o CSP se aplique apenas
a <script type=speculationrules>
, e não ao cabeçalho
Speculation-Rules
. As políticas de script do CSP têm como objetivo proteger contra a injeção de scripts
em HTML, e o modelo de ameaça do CSP não se relaciona com cabeçalhos HTTP. Isso permite
uma implantação mais fácil de regras de especulação de CDNs e outros servidores de borda.
FedCM como um indicador de confiança para a API Storage Access
Reconcilia as APIs FedCM e Storage Access fazendo com que uma concessão FedCM anterior seja um motivo válido para aprovar automaticamente uma solicitação de acesso ao armazenamento.
Quando um usuário concede permissão para usar a própria identidade com um provedor de identidade de terceiros (IdP) em uma parte confiável (RP), muitos IdPs exigem cookies de terceiros para funcionar corretamente e com segurança. Esta proposta tem como objetivo atender a esse requisito de maneira privada e segura, atualizando as verificações de permissão da API Storage Access (SAA, na sigla em inglês) para não aceitar apenas a concessão de permissão dada por uma solicitações de acesso ao armazenamento, mas também a concessão de permissão dada por uma solicitações do FedCM.
Uma propriedade importante desse mecanismo é limitar a concessão a casos explicitamente permitidos pelo RP com a política de permissões do FedCM, aplicando um controle por frame ao RP e impedindo a vigilância passiva pelo IdP além dos recursos que o FedCM já concede.
Valor COOP noopener-allow-popups
Algumas origens podem conter diferentes aplicativos com diferentes níveis de requisitos de segurança. Nesses casos, pode ser útil impedir que scripts executados em um aplicativo abram e executem páginas de outro aplicativo de mesma origem.
Nesses casos, pode ser útil garantir que o documento aberto não possa
ser executado, mesmo que o documento aberto seja de mesma origem. O
valor noopener-allow-popups
Cross-Origin-Opener-Policy permite que os documentos
definam esse comportamento.
API Private Aggregation: aumento do limite de contribuição para 100 para os autores de chamadas da API Protected Audience
Permite que os executores de script da API Protected Audience façam até 100 contribuições por relatório de agregação privada, em comparação com o limite atual de 20.
A agregação particular limita o número de contribuições de histograma que podem ser incorporadas a um único relatório agregável, descartando qualquer outra contribuição. Os autores de chamada do Shared Storage podem contornar o limite invocando outra operação do Shared Storage. No entanto, os autores de chamadas da API Protected Audience não têm armazenamento persistente, portanto, eles perdem as contribuições em excesso no final do leilão. Essa mudança é neutra em relação à privacidade, porque as contribuições da API ainda são limitadas pelo mesmo orçamento de privacidade.
Devido ao preenchimento, cada relatório da API Protected Audience terá um payload maior, mesmo se não precisar do limite de contribuição maior. Esperamos que esses relatórios maiores aumentem o custo de operação do serviço de agregação.
Selecionar a flexibilização do analisador
Essa mudança faz com que o analisador de HTML permita mais tags em <select>
além de
<option>
, <optgroup>
e <hr>
.
Essa mudança oferece suporte ao recurso personalizável <select>
, mas está sendo
enviado primeiro porque pode ser feito separadamente e tem alguns riscos de compatibilidade que
a equipe do Chrome gostaria de receber feedback.
WebGPU: distâncias de corte
Adiciona o recurso opcional de GPU clip-distances
, que permite definir distâncias de clipe
definidas pelo usuário nas saídas do sombreador de vértice. Essa técnica é particularmente útil
para aplicativos que precisam recortar todos os vértices em uma cena que estão além de um
plano definido pelo usuário, como muitos aplicativos de CAD.
WebGPU: GPUCanvasContext getConfiguration()
Depois que GPUCanvasContext configure()
for chamado com um dicionário
de configuração, use o método GPUCanvasContext getConfiguration()
para
verificar a configuração do contexto da tela. Ele inclui os membros device
, format
, usage
,
viewFormats
, colorSpace
, toneMapping
e alphaMode
da GPU.
Conforme discutido no problema 4828,
os apps da Web podem usar
para detectar se a tela HDR tem suporte no WebGPU.
WebHID em workers dedicados
Ativa a WebHID em contextos de worker dedicados. Isso permite que você execute E/S pesadas e processe dados de um dispositivo HID em uma linha de execução separada, ajudando a reduzir o impacto de desempenho na linha de execução principal.
WebRTC RTCRtpEncodingParameters.scaleResolutionDownTo
Uma API que configura codificadores do WebRTC para dimensionar frames de entrada se eles forem maiores
do que maxWidth
e maxHeight
especificados. Essa API é semelhante à
scaleResolutionDownBy
, exceto que as restrições de resolução são expressas em
termos absolutos (por exemplo, 640x360) em vez de termos relativos (por exemplo,
redução de escala por 2), evitando condições de disputa relacionadas à alteração do tamanho do frame de entrada
instantaneamente.
Novos testes de origem
No Chrome 131, você pode ativar os seguintes novos testes de origem.
Estatísticas de pré-reprodução para WebAudio
O recurso AudioContext.playoutStats
permite que um aplicativo meça a
qualidade e a latência da reprodução de áudio usando o WebAudio.
API Summarizer
Uma API JavaScript para produzir resumos do texto de entrada, com o suporte de um modelo de linguagem de IA.
Suspensões de uso e remoções
Esta versão do Chrome apresenta as seguintes suspensões de uso e remoções. Acesse o 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.
Remover a propriedade de posicionamento de âncora do CSS inset-area
Com a resolução do grupo de trabalho do CSS para renomear a propriedade inset-area
para
position-area
, essa remoção limpa a implementação no Chromium para um
recurso compatível com os padrões.
Remover a capacidade de desativar BeforeunloadEventCancelByPreventDefault
O recurso BeforeunloadEventCancelByPreventDefault
foi enviado no Chrome 117, mas
há uma política corporativa que permite que essa flag seja desativada à força. A
política empresarial será removida no Chrome 131.
O método requestAdapterInfo()
não padrão do GPUAdapter foi removido
O grupo de trabalho da WebGPU decidiu que não era prático para requestAdapterInfo()
acionar uma solicitação de permissão. Por isso, removeu essa opção e a substituiu
pelo atributo info
do GPUAdapter. Assim, os desenvolvedores da Web podem receber o mesmo
valor de GPUAdapterInfo
de maneira síncrona.