filter y cómo se utiliza?
filter es una propiedad que se usa para aplicar una o más funciones de filtro sobre un elemento, similar a los filtros de aplicaciones de edición de imágenes. Cada función de filtro realiza una transformación gráfica específica, que puede aplicarse individualmente o en combinación para crear efectos más complejos.
.elemento {
filter: blur(5px) brightness(1.2);
}
En el ejemplo anterior, la imagen o el contenedor con clase .elemento tendrá un desenfoque de 5 píxeles y un aumento de brillo del 20%, lo que produce un efecto visual distintivo.
filter
1. blur(): Aplica un desenfoque a la imagen o elemento.
filter: blur(10px);
blur(10px): Desenfoque de 10 píxeles.
2. brightness(): Ajusta el brillo del elemento.
filter: brightness(1.5);
brightness(1.5): Aumenta el brillo al 150%.
3. contrast(): Modifica el contraste del contenido.
filter: contrast(200%);
contrast(200%): Duplica el contraste de la imagen.
4. grayscale(): Convierte la imagen a escala de grises.
filter: grayscale(100%);
grayscale(100%): Convierte la imagen a blanco y negro.
5. sepia(): Aplica un tono sepia, simulando un filtro de foto antigua.
filter: sepia(80%);
sepia(80%): Aplica un efecto sepia del 80%.
6. saturate(): Ajusta la saturación de los colores.
filter: saturate(2);
saturate(2): Aumenta la saturación al 200%.
7. invert(): Invierte los colores del elemento.
filter: invert(100%);
invert(100%): Invierte los colores completamente, creando un efecto negativo.
8. hue-rotate(): Rota el matiz de los colores.
filter: hue-rotate(90deg);
hue-rotate(90deg): Rota los colores en 90 grados.
9. opacity(): Ajusta la opacidad del elemento.
filter: opacity(50%);
opacity(50%): Reduce la opacidad al 50%.
10. drop-shadow(): Aplica una sombra similar a box-shadow, pero con soporte para contornos no rectangulares (transparencias).
filter: drop-shadow(5px 5px 10px gray);
drop-shadow(5px 5px 10px gray): Sombra con un desplazamiento de 5px en ambos ejes, con un desenfoque de 10px y color gris.
filter
1. Desenfoque de fondo en una imagen:
.imagen-desenfocada {
filter: blur(8px);
}
Crea un desenfoque de 8 píxeles en la imagen, ideal para fondos o efectos de profundidad.
2. Efecto de imagen en blanco y negro:
.imagen-grayscale {
filter: grayscale(100%);
}
Convierte la imagen a blanco y negro, útil para crear efectos monocromáticos.
3. Combinación de filtros:
.combinacion {
filter: brightness(1.2) contrast(90%) sepia(50%);
}
En este ejemplo, se combinan el aumento de brillo, una reducción leve del contraste y un filtro sepia para lograr un efecto vintage.
4. Sombra con drop-shadow():
.sombra {
filter: drop-shadow(4px 4px 6px rgba(0, 0, 0, 0.5));
}
Aplica una sombra más suave y adaptativa que box-shadow, especialmente útil para elementos con formas transparentes.
5. Rotar el matiz para cambiar el color:
.imagen-color {
filter: hue-rotate(180deg);
}
Cambia los tonos de la imagen, ideal para ajustar el esquema de color o crear efectos psicodélicos.
filter en CSS?
filter
blur() y drop-shadow()) pueden ser costosos en términos de rendimiento, especialmente en elementos grandes o en animaciones.
Para más detalles sobre esta propiedad, consulta la documentación oficial de MDN sobre filter.
Jorge García
Fullstack developer