I think I know whats going on. Hard to explain - but I'll give it a shot.
I believe you have configured some of your sprite images based on the repeating background, because you are not using no-repeat
. Every time you add more images to the sprite any icons that were configured on a repeated image will shift.
You will need to:
1) Add no-repeat
to your background (any icons that were using a repeated image will probably now be blank)
2) Reconfigure all your classes to use negative values (always use negative values for your image sprites)
I would suggest you setup your sprites similar to this:
CSS
.sprite-map {
background: url(sprites.png) no-repeat;
}
.job-summary {
background-position: -80px 0;
width: 100px;
height: 80px;
}
.popup-title {
background-position: -15px -100px;
width: 200px;
height: 100px;
}
.popup-close {
background-position: -15px -472px;
width: 50px;
height: 50px;
}
HTML
<div class="job-summary sprite-map"></div>
<div class="popup-title sprite-map"></div>
<div class="popup-close sprite-map"></div>
That way you only need to specify the URL to the sprite once. Now when you add images to the bottom or the right of the sprite - nothing else will be affected.
Also if you're familiar with Sass - Compass makes image sprites incredibly easy. It might be worth taking a look at if you're interested: http://compass-style.org/help/tutorials/spriting/
Hope this helps!