我已将所有图标添加到精灵中。 现在,我需要通过链接显示该精灵中的一个图标。 当我添加精灵并在链接上设置其背景位置时,所有链接的背景都是精灵精灵。
a{
background-image:url('sprite.png');
}
.sprite_link_icon{
padding-left: 20px;
background-position: -36px -10px
}
<a class="sprite_link_icon" href="">test link test</a>
如何设置精灵的宽度和高度,以便它只显示一个图标?
在“a”标签中添加两个div的唯一方法是什么?首先,设置精灵图标和宽度和高度的div,以及其他文本?
<a href="">
<div class="sprite_link_icon" style="width: 10px; height: 10px;"></div>
<div>test link</div>
</a>
答案 0 :(得分:3)
您可以使用:before
或:after
将实际背景移动到另一个(伪)元素,该元素恰好是一个图标的正确大小。
这样的事情:
.icon {
/* nothing special here, just a dynamic element,
maybe with a fixed height? */
}
.icon:before {
content: '';
display: inline-block;
height: 16px;
width: 16px;
background: url(...) etc;
margin-right: .25em; /* might not be necessary due to inline-block */
}
小提琴:http://jsfiddle.net/rudiedirkx/RG3Kd/(尺码错误,因为我没有好的精灵)。
答案 1 :(得分:0)
你不能这样做,当你做精灵时,你应该知道元素的宽度和高度是多少。
在“a”标记中添加跨度并添加背景时,可以解决问题,具有特定的宽度和高度。或者你可以重新安排你的精灵。
答案 2 :(得分:0)
在样式中使用此代码:
a
{
background-color:#00cc00;
padding-left:20px;
}
a span
{
background-color:#fff;
}
然后这个html:
<a href="#"><span>test link</span></a>