اسپرایت تصویری (Image Sprites)
استفاده از Image Sprites برای کاهش درخواستهای HTTP و بهینهسازی سرعت
اسپرایت تصویری چیست؟
Image Sprite یک تصویر بزرگ است که چندین آیکون یا تصویر کوچک در آن قرار دارد. با CSS فقط بخش موردنظر نمایش داده میشود.
چرا از Sprite استفاده کنیم؟
| مزیت | توضیح |
|---|---|
| کاهش HTTP Request | یک درخواست به جای دهها |
| بارگذاری سریعتر | مرورگر یک فایل را دانلود میکند |
| پهنای باند کمتر | حجم کلی کمتر |
روش استفاده
.icon {
background-image: url("sprites.png");
background-repeat: no-repeat;
}
.icon-home { background-position: 0 0; }
.icon-user { background-position: -32px 0; }
.icon-setting { background-position: -64px 0; }
نکته: SVG جایگزین مدرن
امروزه SVG و Icon Fonts جایگزین بهتری هستند:
- SVG مقیاسپذیر است (بدون افت کیفیت)
- SVG با CSS قابل استایل است
- SVG سبکتر است
- SVG انیمیشن میپذیرد
بهترین شیوهها
- امروزه از SVG بهجای Sprite استفاده کنید
- اگر از Sprite استفاده میکنید، آن را فشرده کنید
- برای ایمیلهای HTML هنوز Sprite مفید است
نکات مهم
- Sprite در پروژههای قدیمی هنوز رایج است
- SVG و Icon Fonts جایگزین مدرنتری هستند
- Sprite با
background-positionکار میکند - برای رتینا دیسپلی، Sprite ۲× نیاز است
این مبحث بخشی از دوره آموزش کامل CSS است.