ximg.es

Filtros CSS para imagens

Mova os controlos ou escolha um exemplo e copie a propriedade filter. Com «Ver original» compara o antes e o depois.

Exemplos
Foto de exemplo com os filtros aplicados
Foto de exemplo do banco do ximg.es: /random/960x640.jpg?seed=ximg-filtros

Código CSS

.imagen {
  filter: brightness(110%) contrast(90%) sepia(50%) saturate(80%);
}
0px
110%
90%
0%
50%
80%
0deg
0%
100%
0px

Como funciona o filter

A propriedade filter aplica efeitos gráficos a um elemento quando o navegador o desenha: o ficheiro da imagem não muda. Podem encadear-se várias funções separadas por espaços, e a ordem importa: cada uma aplica-se sobre o resultado da anterior. Esta ferramenta escreve-as sempre pela mesma ordem.

Usos habituais

Filtros no servidor com /random

As fotos aleatórias do ximg.es aceitam dois filtros no próprio URL, aplicados ao gerar a imagem: ?grayscale para preto e branco e ?blur=1…10 para desfocar. A diferença em relação ao CSS é que a imagem já chega filtrada, por isso não há custo ao desenhar e funciona onde não controla o CSS, como num e-mail:

<img src="https://ximg.es/random/800x600?seed=capa&grayscale&blur=3" alt="">

Mais opções das imagens no gerador.

Desempenho

Os filtros de cor são baratos. blur() e drop-shadow() com raios grandes custam mais, sobretudo animados ou em muitos elementos ao mesmo tempo. Se um filtro for fixo e a imagem for sua, por vezes compensa aplicá-lo ao exportar.

Perguntas frequentes

Como ponho uma imagem a preto e branco com CSS?

Com filter: grayscale(100%);. Se quiser que recupere a cor ao passar o rato, acrescente :hover { filter: none; } e uma transition para a mudança ser suave.

Como desfoco uma imagem com CSS?

Com filter: blur(4px);. A desfocagem sai um pouco das margens; se incomodar, ponha a imagem num contentor com overflow: hidden.

Que diferença há entre filter e backdrop-filter?

filter afeta o próprio elemento e o seu conteúdo. backdrop-filter afeta o que fica atrás do elemento, e é o que se usa para o efeito de vidro fosco.

Por que ordem se aplicam os filtros?

Da esquerda para a direita, cada um sobre o resultado do anterior. sepia(100%) hue-rotate(90deg) não dá o mesmo que hue-rotate(90deg) sepia(100%).

Que diferença há entre drop-shadow e box-shadow?

box-shadow segue a caixa retangular do elemento. drop-shadow() segue a forma real do que se vê, por isso num PNG ou SVG com transparência a sombra tem a silhueta do desenho.

Os filtros CSS funcionam em todos os navegadores?

Sim, filter funciona em todos os navegadores atuais, em computador e em telemóvel, sem prefixos.

Mais ferramentas

Ver todas as ferramentas · Gerador de imagens placeholder