Mercado
Preços
EntrarComeçar
Guia práticoCSS e web
CSS e web

Backdrop filter no CSS: vidro fosco que continua rápido

O vidro fosco leva três linhas de CSS e ainda pode fazer um bom celular engasgar. Veja o código, quanto custa desenhá-lo e os planos B que mantêm o texto legível quando o desfoque não chega.

GradientlyConta verificada do Gradiently·1 de outubro de 2026·6 min de leitura
Capa: Acoustic Sound · GR·NF1S·69

Resumindo

  • O backdrop-filter do CSS aplica efeitos, como o desfoque, à área atrás de um elemento, não ao elemento em si.
  • Um elemento precisa de um fundo parcialmente transparente para o backdrop-filter aparecer; sobre um fundo sólido, o efeito fica escondido.
  • O custo do desfoque cresce com o raio e com o tamanho da área desfocada, e é pago de novo toda vez que o conteúdo atrás se move.
  • O Safari exigiu o prefixo -webkit-backdrop-filter até a versão 18, então entregar as duas linhas continua sendo a escolha segura.
  • Um bom plano B é um fundo mais opaco dentro de uma consulta @supports, para o texto continuar legível quando o desfoque não está disponível.
Nesta página
A receita básica de vidro foscoO que as funções do backdrop-filter podem fazerDesempenho do backdrop filterPor que o backdrop-filter não funcionaUm plano B que mantém o texto legívelQuando você nem precisa de desfoque

Um backdrop filter no CSS aplica um efeito gráfico, em geral desfoque, ao que está atrás de um elemento. Escreva backdrop-filter: blur(12px) em um elemento com fundo parcialmente transparente e a página embaixo se suaviza, o visual de vidro fosco usado em barras de navegação, painéis e cartões. Ele é compatível com todos os navegadores atuais. O ofício está em manter a área desfocada pequena, o raio modesto e o plano B legível.

A receita básica de vidro fosco

Três coisas fazem o vidro: um preenchimento translúcido para o fundo aparecer, o desfoque em si e uma borda tênue para o painel ter forma. A maioria também acrescenta um pequeno ganho de saturação, porque desfocar tira a média das cores e as deixa mais acinzentadas do que o esperado.

css
.glass {
  background: rgb(255 255 255 / 0.14);
  -webkit-backdrop-filter: blur(16px) saturate(160%);
  backdrop-filter: blur(16px) saturate(160%);
  border: 1px solid rgb(255 255 255 / 0.22);
  border-radius: 16px;
}
Um painel de vidro claro para uma página escura ou colorida. Deixe a linha com prefixo primeiro, para a propriedade padrão vencer onde as duas são entendidas.

O vidro só parece vidro quando há algo que valha a pena desfocar atrás. Numa página cinza chapada, o painel só parece opaco. Coloque-o sobre uma fotografia ou um gradiente rico, como glassmorphism explica com mais profundidade.

Brasa e violeta sobre a meia-noiteradial-gradient(circle at 20% 25%, #f97316 0%, transparent 40%), radial-gradient(circle at 80% 70%, #7c3aed 0%, transparent 45%), linear-gradient(160deg, #0f172a 0%, #1e1b4b 100%)
Um fundo com manchas de cor bem distintas. O desfoque transforma as manchas em luz suave atrás do painel, que é o objetivo do efeito.

O que as funções do backdrop-filter podem fazer

A propriedade aceita as mesmas funções de filter, e você pode encadeá-las em uma só declaração. Elas se aplicam em ordem, da esquerda para a direita, então blur() seguido de saturate() se comporta de modo diferente do inverso. A lista completa está na MDN.

blur()blur(12px)

Boa para

Vidro fosco, foco atrás de uma caixa de diálogo
saturate()

Exemplo

saturate(160%)

Boa para

Devolver a cor que o desfoque deixa cinza
brightness()

Exemplo

brightness(0.7)

Boa para

Escurecer uma área agitada atrás de texto claro
contrast()

Exemplo

contrast(0.8)

Boa para

Acalmar uma foto ruidosa sob um painel
grayscale()

Exemplo

grayscale(1)

Boa para

Apagar a página atrás de um modal
nonenone

Boa para

Desligar o efeito em um plano B ou media query
FunçãoExemploBoa para
blur()blur(12px)Vidro fosco, foco atrás de uma caixa de diálogo
saturate()saturate(160%)Devolver a cor que o desfoque deixa cinza
brightness()brightness(0.7)Escurecer uma área agitada atrás de texto claro
contrast()contrast(0.8)Acalmar uma foto ruidosa sob um painel
grayscale()grayscale(1)Apagar a página atrás de um modal
nonenoneDesligar o efeito em um plano B ou media query
As funções que você realmente vai usar. brightness() abaixo de 1 costuma ser uma ferramenta de legibilidade melhor que um desfoque mais pesado.

Desempenho do backdrop filter

O desfoque é uma das coisas mais caras que um navegador desenha. Para desfocar uma região, ele precisa ler cada pixel atrás do elemento, amostrar os vizinhos até o raio do desfoque e compor o resultado, e repete esse trabalho sempre que algo atrás do painel muda. Um cabeçalho fixo sobre uma página que rola redesenha o desfoque a cada quadro da rolagem.

O custo escala com dois números que você controla: a área do elemento e o raio. Um cabeçalho de 64 pixels desfocado a 12px é barato em quase tudo. Uma sobreposição de tela cheia desfocada a 40px sobre um vídeo pode derrubar quadros num celular intermediário. O quadro mais amplo está em desempenho de gradientes CSS.

Lento

  • Desfocar a viewport inteira atrás de um modal
  • Raios de 30px ou mais
  • Animar o raio do desfoque ao abrir e fechar
  • Painéis de vidro dentro de painéis de vidro
  • Desfoque sobre vídeo com reprodução automática

Rápido

  • Desfocar só a barra, o cartão ou o painel que precisa
  • Raios entre 8px e 20px
  • Fazer a opacidade do painel aparecer gradualmente, com o desfoque fixo
  • Uma camada de vidro, preenchimentos sólidos dentro dela
  • Desfoque sobre imagens estáticas e gradientes

Meça em um celular de verdade

Nas ferramentas de desenvolvedor do Chrome, abra o painel Rendering, ative o paint flashing e role a página. Se o vidro pisca a cada quadro e o painel Performance mostra quadros perdidos, reduza a área ou o raio antes de qualquer outra coisa.

Por que o backdrop-filter não funciona

Quando o desfoque parece não fazer nada, a causa é quase sempre uma de uma lista curta.

  1. 1

    Veja se o fundo é transparente

    Um background: #fff sólido cobre por completo o fundo desfocado. Use um valor alfa, como rgb(255 255 255 / 0.15).

  2. 2

    Adicione o prefixo do Safari

    O Safari só aceita a propriedade sem prefixo a partir da versão 18. iPhones mais antigos ainda precisam de -webkit-backdrop-filter.

  3. 3

    Procure uma raiz de backdrop acima

    Um elemento pai com filter, opacity abaixo de 1, uma máscara ou o próprio backdrop filter limita o que o filho enxerga. O filho então desfoca só esse pai, o que muitas vezes parece nenhum desfoque.

  4. 4

    Cuidado com filhos fixos

    Como o filter, o backdrop filter faz do elemento o bloco contêiner de filhos com posição fixa e absoluta. Um menu fixo dentro de um cabeçalho de vidro se posiciona em relação ao cabeçalho, não à janela.

  5. 5

    Garanta que haja algo atrás

    O desfoque sobre uma cor chapada é invisível. Role o painel sobre uma imagem para confirmar que funciona.

Um plano B que mantém o texto legível

Painéis translúcidos são desenhados em torno do desfoque. Sem ele, um preenchimento branco de 14 por cento sobre uma foto agitada deixa o texto sobre a própria foto, e o contraste desaba. Escreva primeiro a versão legível e depois a melhore onde o navegador consegue desfocar.

css
/* Works everywhere: opaque enough to read on its own */
.glass {
  background: rgb(15 23 42 / 0.86);
  color: #f8fafc;
}

/* Upgrade where blur is available */
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .glass {
    background: rgb(15 23 42 / 0.45);
    -webkit-backdrop-filter: blur(14px) saturate(150%);
    backdrop-filter: blur(14px) saturate(150%);
  }
}

/* Respect people who ask for less transparency, where supported */
@media (prefers-reduced-transparency: reduce) {
  .glass {
    background: rgb(15 23 42 / 0.94);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
}
Aprimoramento progressivo para o vidro. O suporte a prefers-reduced-transparency ainda é limitado, então trate esse bloco como cortesia, não como garantia.

Confira o contraste no pior ponto atrás do painel, não na média. Um título branco sobre um vidro que passa por um céu claro pode ficar bem abaixo das taxas de contraste de cores e acessibilidade. Escurecer com brightness(0.7) costuma resolver isso com mais segurança do que desfocar mais forte.

Quando você nem precisa de desfoque

Muito vidro fosco existe só para tornar as palavras legíveis sobre um fundo agitado. Se o fundo é seu para projetar, um mais calmo resolve o problema sem custo de renderização. Um gradiente suave e de baixo contraste atrás de um hero dispensa o painel; veja fundos de hero para sites e fundos desfocados, em que o desfoque é gravado na imagem uma vez em vez de calculado a cada quadro.

Novidades
Coleção de primavera, no ar.
Gradiently · @gradiently

Palavras direto sobre um fundo vivo: é aqui que as pessoas recorrem a um painel de vidro.

Novidades
Coleção de primavera, no ar.
Gradiently · @gradiently

O mesmo fundo se acalmando atrás das palavras, sem painel, sombra nem desfoque.

Essa segunda abordagem é como o Gradiently trata a legibilidade: um Mark sabe onde estão as palavras e leva sua região mais calma e de melhor contraste para trás delas, então você nunca precisa de caixa nem de desfoque para resgatar um título.

Crie com um gradiente vivo

Posts, stories, slides e banners em todos os tamanhos, com texto sempre legível.

Começar a criar, grátis

Perguntas frequentes

Qual a diferença entre filter e backdrop-filter?

filter altera o elemento e seu conteúdo. backdrop-filter altera só o que é visível atrás do elemento, através do fundo transparente dele.

Por que o desfoque do meu backdrop-filter não aparece?

Em geral o fundo do elemento é totalmente opaco, o Safari precisa do prefixo -webkit- ou um elemento pai com filter, opacity ou máscara limita o que o elemento enxerga.

O backdrop-filter é ruim para o desempenho?

Pode ser. O custo cresce com a área e o raio desfocados e é pago de novo sempre que o conteúdo atrás se move, então mantenha os painéis de vidro pequenos e os raios modestos.

Ainda preciso do -webkit-backdrop-filter?

O Safari aceita a propriedade sem prefixo a partir da versão 18, mas iPhones mais antigos continuam em uso, então entregar as duas linhas ainda faz sentido.

Que valor de desfoque fica melhor em vidro fosco?

Entre 8px e 20px serve para a maioria das interfaces. Acrescente saturate() acima de 100% para devolver a cor que o desfoque tira.

Compartilhar este guia

Escrito pelo GradientlyConta verificada do Gradiently

A equipe por trás do Gradiently, uma ferramenta de design criada em torno dos Marks: gradientes vivos que fazem tudo o que você cria ter a sua cara.

Ver nosso perfil

Nesta página

A receita básica de vidro foscoO que as funções do backdrop-filter podem fazerDesempenho do backdrop filterPor que o backdrop-filter não funcionaUm plano B que mantém o texto legívelQuando você nem precisa de desfoque

Compartilhar este guia

A seguir em CSS e web

Text shadow em CSS: sintaxe, exemplos e opções melhores

Continue lendo

Todos os guias de CSS e web
Gradientes

Glassmorphism e gradientes: um guia prático

6 min de leitura

O vidro fosco sobre um gradiente luminoso é um dos efeitos mais atraentes do design de interfaces e um dos mais fáceis de tornar ilegível. Veja como ter a beleza sem perder as palavras.

CSS e web

Desempenho de gradientes CSS: gradientes deixam o site lento?

6 min de leitura

Um gradiente CSS estático é quase de graça. Os custos vêm do que as pessoas fazem com gradientes: desfoques enormes, fundos que repintam ao rolar e animações que nunca param. Veja como distinguir.

Fundos

Fundos desfocados: o desfoque suave bem feito

5 min de leitura

O desfoque empurra o fundo para trás, para que o assunto ou as palavras venham para a frente. Pouco parece acidental, demais no lugar errado parece barato. Veja como avaliar.

Encontre o visual que é só seu.

Cada Mark é um fundo vivo com um único dono. Experimente um Mark ainda disponível e reserve o seu quando sentir que é ele.

Começar a criar

Verificar um certificado

Digite o número de um certificado ou o código de um Mark para ver quem é o dono.

Funciona com ChatGPT e Claude

Peça um design à sua IA. Ela cria no seu Mark, pronto para editar.

ChatGPTClaude
Como conectar

Produto

  • Mercado
  • Explorar
  • Preços
  • Certificados

Aprender

  • Guia prático
  • Central de ajuda
  • Novidades

Desenvolvedores

  • Visão geral
  • ChatGPT e Claude
  • Referência da API
  • Chaves de API

Empresa

  • Sobre
  • Fale conosco
  • Entrar

Jurídico

  • Termos
  • Privacidade
  • Reembolsos
  • Proteção do Mark
  • Cookies
  • Todas as políticas
Passe pelas letras. Cada uma veste um Mark de verdade.Toque em uma letra para ver o Mark dela.Um nome. Dez Marks dentro dele.
© 2026 Gradiently