Tutorial CSS Filter: Blur, Brightness, Contrast, dan Lainnya

Created at by Aris Munandar

Efek visual adalah salah satu elemen penting dalam desain web modern. Salah satu fitur menarik yang disediakan CSS adalah CSS filter — sebuah properti yang memungkinkan kamu untuk mengubah tampilan elemen seperti gambar, video, atau bahkan teks tanpa perlu mengedit file aslinya.

Dalam artikel ini, kita akan membahas secara lengkap tutorial CSS filter, termasuk cara menggunakan berbagai jenis filter seperti blur, brightness, contrast, dan lainnya. Kamu juga akan belajar bagaimana menggabungkan beberapa filter sekaligus serta cara membuat efek hover menggunakan filter CSS.

Baca juga: Cara Membuat Efek Parallax Scrolling dengan CSS

Apa Itu CSS Filter?

Filter CSS adalah properti yang digunakan untuk menerapkan efek visual seperti blur (kabur), brightness (kecerahan), contrast (kontras), grayscale (hitam putih), dan banyak lagi pada elemen HTML.

Dengan properti ini, kamu bisa menciptakan tampilan dinamis dan artistik langsung dari CSS tanpa memerlukan editor grafis seperti Photoshop.

Sintaks dasarnya sangat sederhana:

filter: function(value);Code language: PHP (php)

Contohnya:

img {
    filter: blur(5px);
}
Code language: CSS (css)

Kode di atas akan memberikan efek kabur sebesar 5 piksel pada gambar.

Daftar Filter CSS yang Sering Digunakan

Berikut adalah daftar fungsi filter CSS yang umum digunakan dalam desain web:

FilterDeskripsiContoh Nilai
blur()Memberikan efek kabur pada elemenblur(5px)
brightness()Mengatur tingkat kecerahanbrightness(1.2)
contrast()Mengatur tingkat kontrascontrast(150%)
grayscale()Mengubah warna menjadi hitam putihgrayscale(100%)
sepia()Memberikan efek kuno seperti foto lamasepia(80%)
saturate()Mengatur intensitas warnasaturate(2)
invert()Membalikkan warna (negatif)invert(100%)
opacity()Mengatur transparansiopacity(0.5)
hue-rotate()Mengubah rona warna gambarhue-rotate(90deg)
drop-shadow()Memberikan bayangan seperti box-shadowdrop-shadow(10px 10px 5px gray)

Efek Blur dengan CSS Filter

Salah satu efek paling populer adalah blur CSS, yang sering digunakan untuk membuat latar belakang tampak lembut atau menonjolkan elemen tertentu.

.image-blur {
    filter: blur(8px);
}Code language: CSS (css)

Contoh HTML:

<img src="https://picsum.photos/1200/800" class="image-blur" alt="Efek Blur CSS">Code language: JavaScript (javascript)

Efek ini sering digunakan untuk background modal, gambar galeri, atau preview loading screen.

Berikut ini adalah contoh hasil menggunakan filter blur di css.

CSS Filter Blur
Photo by Pierre Lemos on Unsplash

Mengatur Kecerahan dengan Brightness CSS

Properti brightness CSS mengatur seberapa terang atau gelap suatu elemen.

.image-brightness {
    filter: brightness(1.5);
}Code language: CSS (css)

Nilai di atas meningkatkan kecerahan sebanyak 50%.

Nilai 1 adalah normal, >1 lebih terang, dan <1 lebih gelap.

<img src="https://picsum.photos/1200/800" class="image-brightness" alt="Efek Brightness CSS">Code language: JavaScript (javascript)

Efek ini sangat berguna saat kamu ingin menonjolkan detail atau membuat mode gelap (dark mode) secara dinamis.

Berikut ini adalah hasil dari menggunakan filter brightness, gambar atas adalah gambar normal.

CSS Filter Brightness
Photo by Pierre Lemos on Unsplash

Meningkatkan Kontras dengan Contrast CSS

Efek contrast CSS digunakan untuk memperjelas perbedaan antara warna terang dan gelap.

.image-contrast {
    filter: contrast(180%);
}Code language: CSS (css)

Nilai default 100% berarti tidak ada perubahan. Nilai di atas 100% meningkatkan kontras, sementara di bawah 100% menguranginya.

Berikut ini adalah hasil dari perbandingan gambar normal dan yang menggunakan fungsi contrast.

CSS Filter Contrast
Photo by Pierre Lemos on Unsplash

Mengubah Gambar Menjadi Hitam Putih dengan Grayscale

Efek grayscale CSS banyak digunakan untuk membuat tampilan klasik atau menonjolkan warna tertentu pada hover.

.image-gray {
    filter: grayscale(100%);
    transition: 0.3s ease;
}

.image-gray:hover {
    filter: grayscale(0%);
}Code language: CSS (css)

Dengan kode di atas, gambar akan berubah dari hitam putih menjadi berwarna ketika di-hover.

CSS Filter Grayscale
Photo by Pierre Lemos on Unsplash

Efek Sepia untuk Tampilan Vintage

Filter sepia CSS menambahkan efek kecokelatan seperti foto jadul.

.image-sepia {
    filter: sepia(70%);
}Code language: CSS (css)

Efek ini cocok untuk website bertema klasik, seni, atau sejarah.

Berikut ini adalah hasilnya.

CSS Filter Sephia
Photo by Pierre Lemos on Unsplash

Mengatur Warna dengan Saturate dan Hue-Rotate

  • Saturate: menambah atau mengurangi intensitas warna.
  • Hue-Rotate: memutar rona warna.
.image-saturate {
    filter: saturate(2);
}

.image-hue {
    filter: hue-rotate(90deg);
}Code language: CSS (css)

Kombinasi keduanya bisa menciptakan efek warna futuristik atau tema neon yang dinamis.

Efek Bayangan dengan Drop-Shadow

Berbeda dengan box-shadow, drop-shadow CSS diterapkan langsung ke bentuk elemen transparan seperti gambar PNG atau SVG.

.logo-shadow {
    filter: drop-shadow(10px 10px 8px rgba(0,0,0,0.5));
}Code language: CSS (css)

Hasilnya adalah bayangan halus mengikuti bentuk gambar, bukan batas persegi.

Menggabungkan Beberapa Filter Sekaligus

Kamu juga bisa menggunakan multiple filter CSS secara bersamaan.

.image-mix {
    filter: brightness(1.2) contrast(120%) saturate(1.5);
}Code language: CSS (css)

Urutan filter berpengaruh terhadap hasil akhirnya, jadi kamu bisa bereksperimen untuk mendapatkan kombinasi terbaik.

Membuat Efek Hover dengan Filter CSS

Efek hover bisa menambah kesan interaktif pada desain web. Berikut contoh hover filter CSS yang sering digunakan:

.image-hover {
    filter: grayscale(100%);
    transition: filter 0.5s ease;
}

.image-hover:hover {
    filter: grayscale(0%) brightness(1.2) contrast(120%);
}Code language: CSS (css)

Kode ini membuat gambar berubah dari hitam putih menjadi lebih cerah dan kontras saat pengguna mengarahkan kursor.

Filter pada Elemen Non-Gambar

Filter CSS juga dapat diterapkan pada teks, video, dan elemen HTML lainnya.

.text-blur {
    filter: blur(2px);
    transition: 0.4s;
}

.text-blur:hover {
    filter: blur(0);
}Code language: CSS (css)

Kamu bisa membuat efek “reveal” teks saat di-hover — cocok untuk tampilan artistik atau animasi presentasi.

CSS Backdrop Filter untuk Efek Transparansi

Backdrop-filter bekerja mirip filter, namun diterapkan pada latar belakang elemen di belakangnya, bukan elemen itu sendiri.

.glass-effect {
    backdrop-filter: blur(10px) brightness(0.9);
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    padding: 20px;
}Code language: CSS (css)

Efek ini biasa disebut glassmorphism, sangat populer dalam desain antarmuka modern seperti macOS atau iOS.

Animasi Filter CSS

Kamu dapat membuat CSS filter animation agar efek berubah secara halus.

@keyframes blurIn {
    from {
        filter: blur(10px);
    }
    to {
        filter: blur(0);
    }
}

.animated-blur {
    animation: blurIn 1s ease-out;
}Code language: CSS (css)

Kombinasikan dengan efek transform atau transition untuk hasil animasi yang lebih hidup.

Filter SVG dan CSS Filter

Selain filter CSS standar, kamu juga bisa menggunakan SVG filter untuk efek kustom seperti emboss, lighting, atau turbulence.

Contoh mengimpor SVG filter di CSS:

img {
    filter: url(#my-svg-filter);
}Code language: CSS (css)

Performa CSS Filter

Gunakan CSS filter dengan bijak karena efek seperti blur() dan drop-shadow() dapat menambah beban render terutama pada elemen besar.

Tips performa:

  • Gunakan gambar terkompresi.
  • Hindari terlalu banyak filter pada satu halaman.
  • Gunakan GPU acceleration (will-change: filter) untuk efek animasi.
.image-optimized {
    will-change: filter;
}Code language: CSS (css)

Kombinasi Filter untuk Efek Sinematik

Berikut contoh kombinasi filter CSS untuk menciptakan nuansa sinematik:

.cinematic {
    filter: brightness(0.8) contrast(1.3) sepia(20%) saturate(1.5);
}Code language: CSS (css)

Hasilnya: tampilan gambar seperti film — kontras tinggi dan berwarna hangat.

Studi Kasus: Efek Blur Latar Belakang Konten

Kita bisa menciptakan efek blur di belakang konten untuk tampilan modern seperti kaca buram.

<div class="parallax">
    <div class="blur-box">
        <h2>Blur Background dengan CSS</h2>
        <p>Efek blur memberikan kedalaman visual pada desain web.</p>
    </div>
</div>Code language: HTML, XML (xml)
.parallax {
    background-image: url('https://picsum.photos/1200/800');
    background-size: cover;
    height: 100vh;
}

.blur-box {
    backdrop-filter: blur(15px);
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    padding: 40px;
    color: #fff;
}Code language: CSS (css)

Efek ini memadukan backdrop-filter dengan transparansi, menciptakan gaya frosted glass yang elegan.

CSS Filter untuk Desain Interaktif Web

Berikut beberapa ide penerapan filter CSS untuk web design:

  • Efek hover tombol: ubah kecerahan tombol saat disentuh.
  • Efek loading: tampilkan gambar kabur lalu perlahan tajam.
  • Efek teks neon: kombinasikan brightness() dan drop-shadow().
  • Efek dark mode: gunakan invert() untuk menyesuaikan tema.

Kesimpulan

Melalui tutorial CSS filter lengkap ini, kamu telah mempelajari:

  • Cara menggunakan berbagai jenis filter CSS: blur(), brightness(), contrast(), grayscale(), sepia(), dan lainnya.
  • Cara menggabungkan multiple filter CSS dalam satu elemen.
  • Penggunaan backdrop-filter untuk efek transparansi modern.
  • Tips performa dan ide penerapan filter dalam desain web.

Dengan memahami setiap properti filter CSS, kamu bisa menciptakan website yang lebih dinamis, menarik, dan profesional, tanpa harus mengandalkan JavaScript atau manipulasi gambar eksternal.

Comments

Congrats, you have the opportunity to be the first commenter on this article. Have questions or suggestions? Please leave a comment to start discussion.

Leave comment

Alamat email Anda tidak akan dipublikasikan. Required fields are marked *