bangun sprite

Pembuat Sprite SVG

Jatuhkan ikon-ikon Anda dan dapatkan satu berkas sprite berisi elemen symbol, plus baris use untuk tiap ikon, siap ditempel.

bangun sprite

☞ berjalan sepenuhnya di browser Anda — tidak ada yang diunggah

Jatuhkan ikon SVG Anda di sini

atau klik untuk memilih — hingga 40 berkas SVG

satu berkas, satu rujukan per ikon

Mengapa sprite, bukan empat puluh berkas

Setiap ikon yang dimuat sebagai berkasnya sendiri adalah satu permintaan sendiri, satu entri singgahan sendiri, dan satu peluang sendiri untuk datang terlambat satu bingkai. Sprite melipat semuanya jadi satu dokumen: tiap ikon menjadi symbol dengan viewBox-nya sendiri, tidak ada yang menggambar dengan sendirinya, dan Anda menariknya keluar dengan use href="#icon-name" di mana pun perlu. Karena rujukannya lewat id dan bukan URL, ikon mewarisi currentColor dan CSS pada svg yang membungkusnya — hal yang justru tidak bisa dilakukan setumpuk tag img.

Yang sulit bukan membungkusnya, melainkan penamaannya. Empat puluh ikon hasil ekspor dari perkakas desain dengan senang hati memuat empat puluh gradien bernama "a" dan empat puluh kelas bernama "cls-1"; begitu berbagi satu dokumen, yang kedua diam-diam mengambil warna yang pertama. Karena itu setiap id dan kelas di dalam sebuah ikon diganti namanya dengan id symbol ikon itu sendiri sebagai awalan, dan keempat tempat persembunyian rujukan — url() dalam atribut, href yang menunjuk fragmen, atribut style, serta CSS di dalam elemen style — ikut ditulis ulang. Tidak ada yang merembes antar ikon.

tiga langkah

Cara membuat sprite SVG

01

Jatuhkan ikonnya

Hingga 40 berkas SVG sekaligus, diurai di peramban Anda. Urutkan ulang baris dengan tombol panah; urutan itulah urutan symbol di dalam berkas.

02

Periksa id-nya

Setiap symbol dinamai sesuai berkasnya dengan awalan di depan, dan daftarnya menampilkan hasilnya. Dua berkas bernama sama mendapat angka agar tak ada dua symbol yang mengklaim satu id.

03

Salin cuplikan, unduh berkasnya

Sprite masuk ke halaman Anda atau disajikan sebagai sprite.svg; cuplikannya memberi satu baris siap tempel per ikon.

jawaban singkat

Tanya jawab sprite SVG

Bagaimana memakai sprite setelah jadi?

Ada dua cara. Tempelkan seluruh sprite di bagian atas HTML Anda lalu rujuk sebuah ikon dengan use href="#icon-name"; atau sajikan berkasnya dan rujuk dengan use href="/sprite.svg#icon-name". Cara pertama menghemat satu permintaan, cara kedua membiarkan peramban menyinggahkan satu sprite untuk semua halaman.

Dari mana id symbol berasal?

Dari nama berkas: dihurufkecilkan, apa pun yang bukan huruf atau angka diubah jadi tanda hubung, lalu awalan di depan. Jadi arrow_left.svg dengan awalan bawaan menjadi icon-arrow-left.

Kenapa harus ada awalan?

Id XML tidak boleh diawali angka, sedangkan nama berkas seperti 2-arrow.svg itu lumrah. Awalan juga mencegah id ikon bentrok dengan id yang sudah ada di halaman Anda. Awalan bisa diubah atau dikosongkan; bila mengosongkannya membuat id tidak sah, awalan cadangan dipasang kembali.

Bagaimana kalau dua berkas bernama sama?

Yang kedua ditambahi angka. Tanpa itu, kedua symbol akan memakai id yang sama dan setiap rujukan ke id itu akan menampilkan ikon pertama — gambar yang salah tanpa suara, bukan pesan galat.

Apakah gradien dan filter saya selamat?

Selamat. Setiap id dan kelas di dalam sebuah ikon diganti namanya dengan id symbol-nya sebagai awalan, dan rujukannya ikut ditulis ulang: url() dalam atribut, href fragmen, atribut style, dan CSS di dalam elemen style.

Masih bisakah mewarnai ikon lewat CSS?

Kalau ikonnya memakai fill="currentColor", bisa — setel color pada svg yang memuat rujukan itu dan ikonnya mengikuti. Ikon dengan isian warna tetap akan mempertahankannya; sprite tidak menulis ulang warna Anda.

Berapa banyak ikon yang bisa ditambahkan?

Hingga 40 sekaligus. Sprite sendiri tidak punya batas nyata, tetapi lembar yang jauh lebih besar biasanya lebih baik dipecah per bagian situs, agar satu halaman hanya membawa ikon yang benar-benar dipakainya.

Apakah berkas saya diunggah?

Tidak. SVG diurai dan dirakit di dalam peramban Anda, dan pratinjaunya adalah URL blob dari mesin Anda sendiri. Alat ini tidak punya server yang bisa menerima berkas.

Apakah gratis?

Ya — gratis, tanpa tanda air dan tanpa pendaftaran.