Смысл спрайта в том, чтобы загрузить картинку 1 раз, а потом позиционировать ее, снижая этим запросы к сайту на загрузку кучи изображений
Вот так:
background: url(csg-4c02d3bed6106.png) no-repeat top left;
картинка подгружается.
А так:
background-position: -3050px -286px; width: 1086px; height: 150px;
она позиционируется.
Назначать картинку нужно тому элементу(там), которому(ым) будет применен этот спрайт.
Как пример:Есть меню, реализованное с помощью списка.
У каждого пункта есть свой уникальный класс (item1, item2 и т.д.).
Чтобы применить к пунктам меню некий спрайт (скомпонованную картинку), в котором изображены все пункты меню картинками, мы назначаем на пункт меню (тег li) стиль с фоновой картинкой (0 0 = top left):
#menu li{background: url(csg-4c02d3bed6106.png) no-repeat 0 0;}
Этот стиль распространится на все теги li в меню #menu.
При этом, у всех пунктов будет одна и та же часть изображения, который находится в левом/верхнем краю спрайта (из-за ориентации top left).
Теперь, чтобы распределить все изображения спрайта под соответствующий пункт меню, нам надо для каждого из пунктов спрайт (который является фоновым изображением) подвинуть на нужную величину.
К примеру, для второго пункта меню подвинем спрайт на 100 пикселей, чтобы для него показать нужную часть спрайта.
#menu li.item2{background-position: 0 100px;}
И так можно пройтись по всем пунктам меню. Но в данном примере пункты меню должны иметь габариты, соответствующие своим частям спрайта, чтобы в каком-нибудь пункте меню не показалась часть изображения от другого меню.
При этом, для всех пунктов меню будет грузится только одна картинка.
Так же можно проделывать со многими элементами, компонуя их в спрайты и распределяя по нужным элементам, уменьшая количество запросов к сайту.