Gerador Glassmorphism CSS & Vidro Fosco

Gerador Glassmorphism CSS & Vidro Fosco

Gere código CSS moderno de glassmorphism e vidro fosco com ajustes em tempo real de desfoque backdrop-filter, opacidade, borda e sombra. Copie HTML e CSS limpos.

Carregar Exemplo
Parâmetros de Glassmorphism
16px
0.18 (82% Transmitância de Luz)
#FFFFFF
1px
0.25
135°
140%
Level 3
Opacidade do Ruído5%
Passe Glassmorphic
Chave de Acesso Descentralizada
PROTÓTIPO ATIVO
Transmitância de Superfície
82%(16px px (σ gaussiano))
TITULAR DO CARTÃO
CARLOS SILVA
VALIDADE
12/28
Largura do Cartão:440px
Altura do Cartão:270px
Raio de Desfoque16px
Transmitância de Luz82%
Razão de Contraste10.23:1
Tamanho do CSS521 B
Prefixo WebKit-webkit- ON
Largura de Banda GPU57 MB/s
Referência técnica e guia de arquitetura

Gerador Glassmorphism CSS & Vidro Fosco — Guia de referência

Gere código CSS moderno de glassmorphism e vidro fosco com controles em tempo real de backdrop-filter, opacidade, borda e sombras. Copie HTML e CSS limpos instantaneamente.

Gerador Glassmorphism CSS & Vidro Fosco — Guia de referência — Arquitetura em memória do lado do cliente e fluxo de dados
Gerador Glassmorphism CSS & Vidro Fosco — Guia de referência — Arquitetura em memória do lado do cliente e fluxo de dados

Parâmetros-chave e controles

backdrop-filter: blur(px)Comprimento CSS (px)

Controla o raio de convolução gaussiana (desvio padrão) dos pixels de fundo diretamente sob o elemento. O intervalo seguro de referência situa-se entre 8px e 24px; valores superiores a 32px geram gargalos críticos na taxa de preenchimento (fill-rate) de rasterização da GPU em dispositivos móveis de baixo consumo.

Padrão: 16px
-webkit-backdrop-filter: blur(px)Propriedade de Prefixo CSS (Vendor Prefix)

Prefixo de fornecedor obrigatório do motor WebKit, indispensável para o Apple Safari (no iOS Safari e macOS Safari). A omissão deste prefixo anula completamente o desfoque no Safari, deixando o cartão como um polígono translúcido plano.

Padrão: 16px
background: rgba(R, G, B, alpha)Translucidez de Cor CSS

Regula a tonalidade do substrato base e a transmitância luminosa. O intervalo alfa padrão-ouro situa-se entre 0.10 e 0.35 para vidro escuro e entre 0.25 e 0.70 para vidro fosco claro; ultrapassar 0.75 elimina a refração do fundo, enquanto valores abaixo de 0.08 destroem o contraste estrutural.

Padrão: rgba(255, 255, 255, 0.18)
border: 1px solid rgba(255, 255, 255, alpha)Realce Especular de Borda CSS

Simula a reflexão óptica de borda baseada nas equações de Fresnel, onde as arestas do vidro refratam a luz incidente ambiente. Os melhores resultados utilizam uma borda semitransparente de 1px com alfa entre 0.15 e 0.40, ou um gradiente linear direcional com esmaecimento do claro para o escuro.

Padrão: 1px solid rgba(255, 255, 255, 0.25)
backdrop-filter: saturate(%)Porcentagem de Filtro CSS

Compensa o efeito colateral óptico de dessaturação provocado pelo desfoque gaussiano. Elevar a saturação entre 120% e 180% restaura a vivacidade cromática e impede que os fundos desfocados fiquem opacos, cinzentos ou esbranquiçados.

Padrão: 140%
Microrruído SVG feTurbulenceFiltro SVG / Data URI

Aplica granulação de ruído fractal procedural sobre a superfície fosca. Elimina o efeito de faixas de cor (color banding) escalonado de 8 bits em gradientes desfocados em monitores sRGB padrão e reproduz a textura tátil do acrílico físico.

Padrão: opacity: 0.05

Dicas profissionais e melhores práticas

Realce especular direcional com borda em gradiente linear

O vidro físico real reflete a luz de forma assimétrica dependendo do ângulo da fonte primária de iluminação. Em vez de uma borda plana, aplique uma borda com gradiente direcional usando border-image ou um pseudoelemento com background: linear-gradient(135deg, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0.05) 100%). Isso estabelece uma fonte de luz superior esquerda inconfundível e cria uma profundidade tátil 3D realista.

Promoção para composição de hardware com will-change

Os cálculos de filtros backdrop exigem que o motor de composição do navegador capture capturas instantâneas das camadas de fundo, aplique convolução gaussiana e recomponha o layout a cada quadro. Durante rolagem suave (smooth scroll) ou transições animadas, declare will-change: transform ou transform: translateZ(0) para promover o contêiner de vidro à sua própria camada isolada de composição na GPU, eliminando quedas de quadros (dropped frames).

Defesa contra bug de recorte de border-radius no Safari WebKit

Navegadores WebKit frequentemente vazam pixels desfocados para fora de cantos arredondados ou renderizam bordas retangulares serrilhadas sem suavização sob o border-radius. Evite esse artefato de borda declarando overflow: hidden em conjunto com isolation: isolate e -webkit-mask-image: -webkit-radial-gradient(white, black) no contêiner fosco.

Proteção de legibilidade WCAG 2.1 AA/AAA via sombras internas

Posicionar texto claro diretamente sobre vidro translúcido frequentemente reprova a conformidade de contraste 4.5:1 da WCAG quando fundos dinâmicos alternam entre áreas escuras e claras. Aplique uma vinheta ambiente interna com box-shadow: inset 0 0 40px rgba(0, 0, 0, 0.25) ou adicione text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4) para garantir conformidade em planos de fundo dinâmicos e imprevisíveis.

Armadilhas comuns e solução de problemas

⚠️O desfoque com backdrop-filter não produz efeito visível e o fundo permanece totalmente nítido

Verifique três causas comuns de falha: (1) Certifique-se de declarar -webkit-backdrop-filter antes de backdrop-filter para compatibilidade com Safari; (2) Confirme que a cor de fundo do cartão não é 100% opaca (por exemplo, #FFFFFF em vez de rgba(255,255,255,0.2)); (3) Certifique-se de que nenhum nó DOM ascendente possua propriedades CSS como filter, transform ou perspective ativas que interfiram na captura padrão do contexto de empilhamento (stacking context).

⚠️O cartão fosco parece desbotado, sem contraste ou totalmente invisível sobre fundos planos

O glassmorphism é um efeito puramente óptico que depende diretamente de variações de alto contraste no substrato sob o elemento. Quando posicionado sobre uma cor sólida e homogênea, o desfoque gaussiano não possui variações tonais para dispersar. Adicione um gradiente multicolorido sutil, formas geométricas ou fotografias sob o cartão e amplie o contraste da borda especular de 1px.

⚠️Travamentos severos (jank), alto consumo de CPU e drenagem de bateria durante a rolagem

Múltiplos elementos sobrepostos com backdrop-filter forçam rasterização por GPU em múltiplos passos a cada evento de rolagem. Limite o raio de desfoque a 20px ou menos, evite aninhar múltiplos elementos com backdrop-filter uns dentro dos outros, desative o desfoque em telas móveis via @media (hover: none) ou @media (max-width: 768px) e aplique contain: paint.

⚠️Textos, ícones e elementos filhos dentro do contêiner de vidro ficam borrados

Nunca aplique a propriedade CSS padrão filter: blur(...) ao elemento contêiner, pois filter atua de maneira indiscriminada sobre o elemento e toda a sua árvore de nós filhos. Você deve empregar especificamente backdrop-filter: blur(...), que processa exclusivamente os pixels de fundo situados atrás do elemento, preservando todos os textos e ícones perfeitamente nítidos.

Perguntas frequentes (FAQ)

Como criar o efeito glassmorphism de vidro fosco em CSS puro?▼

Para criar um efeito de vidro fosco em CSS puro, combine três propriedades essenciais: backdrop-filter: blur(16px) com seu prefixo de fornecedor -webkit-backdrop-filter: blur(16px), uma cor de fundo semitransparente como background: rgba(255, 255, 255, 0.2) e uma borda de realce especular sutil como border: 1px solid rgba(255, 255, 255, 0.3). O uso opcional de sombras box-shadow em múltiplas camadas e filtros de saturação (backdrop-filter: blur(16px) saturate(140%)) maximiza o realismo óptico.

Quais são os valores recomendados de raio de desfoque e opacidade para glassmorphism?▼

O ponto de equilíbrio padrão da indústria é um raio de desfoque entre 12px e 24px aliado a uma opacidade alfa de fundo entre 0.15 e 0.35. Um desfoque abaixo de 8px não proporciona difusão fosca perceptível, enquanto valores acima de 32px introduzem sobrecarga excessiva de rasterização na GPU e elevado consumo de bateria. Para vidro no modo escuro, use rgba(15, 23, 42, 0.3) com desfoque de 20px; para o modo claro, utilize rgba(255, 255, 255, 0.4) com desfoque de 16px.

Qual é a diferença entre CSS filter: blur() e backdrop-filter: blur()?▼

O CSS filter: blur() desfoca o próprio elemento e a totalidade de seus nós descendentes (tornando textos, botões e imagens internas completamente ilegíveis). Em contrapartida, o backdrop-filter: blur() desfoca exclusivamente os elementos gráficos e conteúdos de fundo posicionados fisicamente sob a caixa delimitadora do elemento, mantendo toda a tipografia e controles de interface perfeitamente nítidos e legíveis.

Por que o desfoque com backdrop-filter não funciona no meu site em certos navegadores?▼

O backdrop-filter falha principalmente quando desenvolvedores omitem o prefixo de fornecedor -webkit-backdrop-filter exigido pelo Apple Safari (iOS e macOS), quando a cor de fundo é declarada com 100% de opacidade (bloqueando totalmente o plano de fundo) ou quando um contêiner pai combina overflow: hidden com propriedades CSS filter. Para navegadores sem compatibilidade (como o Firefox anterior à versão 103 ou WebViews antigas no Android), forneça um fallback progressivo usando @supports not (backdrop-filter: blur(1px)) com um fundo sólido a 85% de opacidade.

Ferramentas e utilitários relacionados

Todas as ferramentas →