Cara menggunakan Konverter SVG ke CSS
- Tempel kode SVG kamu, buka file
.svg, atau muat contohnya. - Biarkan Bersihkan SVG aktif untuk menghapus komentar, metadata, dan atribut editor, lalu pilih URL-encoded atau Base64.
- Cek kedua pratinjau — gambar background biasa dan versi mask satu warna.
- Salin data URI atau aturan CSS lengkapnya, lalu tempel ke stylesheet kamu.
Apa itu data URI SVG?
Data URI menyematkan file langsung di CSS alih-alih menautkannya: background-image: url("data:image/svg+xml,…"). Untuk ikon kecil, pembatas, pola, dan checkbox kustom, cara ini menghemat satu HTTP request, mencegah kedipan gambar yang belum termuat, dan menjaga aset tetap berdampingan dengan style yang memakainya.
URL-encoding vs Base64
SVG adalah teks, jadi tidak perlu Base64. Base64 membengkakkan file sekitar 33% dan mengubahnya menjadi blob yang tidak bisa dibaca serta kurang efektif saat dikompresi dengan gzip atau Brotli. SVG yang di-URL-encode tetap mendekati ukuran aslinya dan masih bisa dibaca. Hanya beberapa karakter yang perlu di-escape:
| Karakter | Hasil encode | Alasan |
|---|---|---|
# | %23 | Jika tidak, dianggap awal fragment URL — warna seperti #fff merusak gambar. |
% | %25 | Karakter escape itu sendiri. |
< > | %3C %3E | Disarankan agar kompatibel dengan parser yang ketat. |
" | ' atau %22 | Tanda kutip atribut diganti kutip tunggal agar CSS bisa membungkus URI dengan kutip ganda. |
Gunakan Base64 hanya jika tool atau framework menolak format lain. Kartu ukuran di bawah pratinjau menampilkan kedua hasil supaya kamu bisa membandingkan.
Ikon bisa diubah warna dengan mask-image
SVG yang dipakai sebagai background image dirender secara terpisah: CSS di halaman tidak bisa mengubah fill-nya, dan currentColor di dalamnya tidak mengikuti warna teks kamu. Snippet mask-image mengatasi ini dengan memakai SVG hanya sebagai stensil lalu mewarnainya dengan background-color: currentColor, sehingga satu ikon bisa tampil dalam warna apa pun, state hover, atau dark mode. Baris -webkit-mask tetap dibutuhkan untuk beberapa browser.
Pembersihan dan batasan
Pembersihan menghapus deklarasi XML, komentar, <metadata>, <title> (tidak berguna di background), atribut Inkscape/Sodipodi/Sketch, dan spasi berlebih. Jika xmlns yang wajib tidak ada, atribut itu akan ditambahkan — tanpanya browser tidak akan merender gambar. Sematkan hanya SVG kecil (beberapa KB): data URI besar membuat setiap unduhan CSS membengkak dan tidak bisa di-cache terpisah. Untuk grafik kompleks, tautkan file-nya saja. Butuh komponen React, bukan CSS? Gunakan SVG ke JSX; untuk gambar raster, lihat Image ke Base64.
Menggunakannya di Webflow
Panel Backgrounds di Webflow hanya menerima gambar yang diunggah, jadi tempel aturan yang dihasilkan ke dalam tag <style> di elemen Embed atau di custom code halaman/situs, lalu beri elemenmu class yang sesuai (misalnya icon).
Juga dicari sebagai: svg ke css, svg data uri, svg ke data url, url encode svg, svg sebagai background image, svg ke base64, mask-image, ikon css svg.
Tool yang cocok dipakai bersama Konverter SVG ke CSS
- Encode & Decode URL — Ubah teks menjadi percent-encoding agar aman dipakai di URL, kembalikan string yang sudah di-encode menjadi teks yang bisa dibaca, dan pecah URL apa pun menjadi bagian-bagian serta parameter query-nya.
- Encode / Decode Base64 — Ubah teks ke Base64 dan sebaliknya dengan dukungan UTF-8 penuh (aksen, emoji), beralih ke Base64 URL-safe, atau seret file untuk mendapatkan string Base64 atau data URI-nya.
- CSS Minifier — Tempel stylesheet untuk langsung memperkecil ukurannya.
- Generator Animasi CSS — Desain animasi CSS di atas timeline keyframe sungguhan.
Pertanyaan yang sering diajukan
Kenapa data URI SVG saya tidak muncul?
# yang belum di-escape (pada warna seperti #fff), atribut xmlns="http://www.w3.org/2000/svg" yang hilang, atau kutip yang tidak seimbang antara url("…")` di CSS dan atribut SVG. Tool ini memperbaiki ketiganya.Mana yang lebih baik untuk SVG di CSS, URL-encoding atau Base64?
Bisakah saya mengubah warna background image SVG dengan CSS?
mask-image dan mengatur background-color, yang bisa diubah saat hover atau di dark mode.Apakah saya perlu menambahkan charset=utf-8 di data URI?
data:image/svg+xml, sudah cukup.