Efeito de filtro alpha com CSS
Publicado em: 16/06/2004Introdução
Este tutorial mostra uma técnica bastante simples para se reproduzir com CSS puro, os efeitos de filtro alpha, que quando definidos sem uso das CSS, ficam restritos a serem visualizados em determinados browser, limitando ou mesmo impedindo com isso seu uso irrestrito para projetos web.
Ao final da leitura deste tutorial, você estará capacitado a reproduzir esse efeito e mais ainda, com algumas simples adaptações obter outros efeitos similares e tudo de acordo com as WebStandards, validado pela W3C e visualizados em todos os browsers com suporte para CSS.
O filtro alpha para o Internet Explorer
A MS desenvolveu vários tipos de filtros (entre eles o filtro alpha), que são visualizados em browsers Internet Explorer versão 5.5 ou superior.
Se toda a sua audiência usa este browser, o filtro da MS poderá ser usado, mas com a desvantagem de que sua folha de estilo não será validada pelo W3C, e em consequência não conforme com as Web Standards.
Veja um exemplo do filtro alpha da MS, e o código correspondente.
O filtro alpha para browser com tecnologia mozilla
A Mozilla desenvolveu um filtro alpha, que é visualizado em browser que adotam a tecnologia mozilla.
Se toda a sua audiência usa este browser, o filtro poderá ser usado, mas com a desvantagem de que sua folha de estilo não será validada pelo W3C, e em consequência não conforme com as Web Standards.
Veja um exemplo do filtro alpha mozilla, e o código correspondente.
O filtro alpha CSS
Com CSS é possível simular perfeitamente um filtro alpha, que é visualizado em todos os browsers que suportam CSS.
Assim, use o filtro com CSS, pois você terá a sua folha de estilo validada pelo W3C, e em consequência conforme com as Web Standards.
O HTML para o filtro
A marcação HTML é bem simples:
- Uma
DIVpara conter a imagem; - Uma
DIVpara o filtro, dentro daDIVimagem.
<div id="imagem"> <img src="flor.jpg" alt="flor" /> <div id="filtro"> Técnica de filtro alpha com CSS puro! </div> </div>
O HTML acima é renderizado conforme mostrado a seguir.
Colori a divisão #imagem em cinza claro e a DIV texto em amarelo claro para efeito de visualização.

As regras CSS para colocar o filtro sobre a figura
#imagem {position:relative;}
E, as regras de estilo para a divisão #filtro:
Notar que o posicionamento da DIV texto é feito em relação
a DIV imagem e não a viewport.
#filtro {
position:absolute;
width: 160px;
height:100px;
top:90px;
left:60px;
font: bold 14px arial, sans-serif;
color:#333333;
}
Com estas regras observe como o browser renderiza o HTML

As regras CSS
Para obter o efeito final, declaramos a largura da divisão #imagem, igual a largura da imagem (neste tutorial: a flor):
#imagem {
width:280px ; /* igual a largura da imagem */
position:relative; /* esta regra cria a
referência para posicionar o filtro */
}
E, nas regras de estilo para a divisão #filtro acresentamos uma imagem como background.
Está é uma imagem especial que vai simular o efeito do filtro.
#filtro {
position:absolute;
width: 160px;
height:100px;
top:90px;
left:60px;
font: bold 14px arial, sans-serif;
color:#333333;
/* É na regra CSS para o background que está o FILTRO! */
/* O filtro é a imagem alpha.gif */
background:transparent url(alpha.gif) center repeat;
}
O filtro
O "truque" para obter o efeito reside na imagem de fundo para a divisão #filtro.
Imagem esta que Todd Fahrner chamou de halfscreen, que traduzido ao pé da letra resulta em meia-tela e que
eu vou chamar de imagem ou fundo alpha
.
A imagem alpha é formada por pixels que se alternam em transparente e opaco. Imagine um tabuleiro de xadrez, onde as "casas" pretas sejam pixel colorido (opaco) e as brancas transparentes.
Veja a figura abaixo ilustrando a explicação:

Considerações finais
Como você já deve ter concluído o filtro alpha com CSS resume-se a imagem alpha. Mudando a cor dos pixels, você obtém cores diferentes para o filtro.
Sugiro alterar o formato de montagem (tabuleiro de xadrez) da imagem alpha para observar o efeito final.
Por exemplo: Tente com uma alpha tipo scan lines ou usar 4px ao invés de 1 px e uma variedade sem fim de experimentos.
Simples,...... mas genial! :-)
veja um exemplo do filtro alpha, com CSS e o código correspondente.
Conheça os livros do Maujor®
Ir para a página de entrada nos sites dos livros.