There’s an interesting article on mobiforge.com that talks about the pitfalls of using CSS sprites for mobile web content. While there are several reasons why sprites may not be a good idea, two stand out for me: CSS2 support is required for the necessary background positioning, and there may be longer term performance penalties associated with using the layout engine for positioning on every page.
That performance aspect is something to think about. The author states that it may be better to deliver a set of images once, paying a relatively small penalty for extra (cached, with long expiration) HTTP transactions, than to pay a layout engine penalty on every subsequent page rendering.
I can’t say for sure, but I can certainly imagine that some mobile devices are better than others when it comes to page rendering performance. As one of the commenters in the article states, this “brings us back to the golden rule in mobile: know thy browser…”. What works best in the desktop world may not be best in the mobile world.
The W3C says that CSS sprites are a best practice for the mobile web so — this would seem to be a odds with that recommendation. What do you think?