背景图像定位

时间:2011-05-17 15:55:00

标签: jquery css hyperlink css3 background-image

我创建了一个sprite,其中包含我在Web应用程序中使用的一整套图标。但是,在样式链接时遇到了问题。我知道使用CSS我可以操纵链接的大小并移动它的背景图像(精灵),所以我只在精灵中显示我想要的图标。这适用于没有文本的链接。但是,如果我有一个背景图片和附加文字的链接,那就是我遇到问题的地方。

看看这些图片,这将解释我的困境:

我知道我可以在CSS3中“剪辑”背景图像,但我现在试图避免这种情况,因为我知道主要是旧浏览器[如IE8 X(]将访问该网站,并且不会看到有没有办法在不添加额外标记的情况下执行此操作,例如每个链接中的<span>标记并对其进行样式设置?我已经看到了可以使用AJAX库(如jQuery)的示例帮助解决这个问题,但这对于一项小任务来说有很多汗水。

我希望这不会令人困惑。

2 个答案:

答案 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