我创建了一个sprite,其中包含我在Web应用程序中使用的一整套图标。但是,在样式链接时遇到了问题。我知道使用CSS我可以操纵链接的大小并移动它的背景图像(精灵),所以我只在精灵中显示我想要的图标。这适用于没有文本的链接。但是,如果我有一个背景图片和附加文字的链接,那就是我遇到问题的地方。
看看这些图片,这将解释我的困境:
我知道我可以在CSS3中“剪辑”背景图像,但我现在试图避免这种情况,因为我知道主要是旧浏览器[如IE8 X(]将访问该网站,并且不会看到有没有办法在不添加额外标记的情况下执行此操作,例如每个链接中的<span>
标记并对其进行样式设置?我已经看到了可以使用AJAX库(如jQuery)的示例帮助解决这个问题,但这对于一项小任务来说有很多汗水。
我希望这不会令人困惑。
答案 0 :(得分:1)
使用jQuery实际上非常简单:只需为所有这些元素分配一个像sprite
这样的公共类。现在您可以检查它是否是IE8并运行此代码:
$('.sprite').toggleClass('sprite').prepend('<span class="sprite"/>')
使用span
类创建sprite
。使用一些聪明的CSS,您应该能够使用sprite
类将背景移动到元素。
答案 1 :(得分:0)
你需要在你的精灵中放置你需要的空白区域。这应该够了吧。 就像这个&gt; http://css-tricks.com/wp-content/csstricks-uploads/youtube-sprite.png