我有一个大小为32x32像素的CSS精灵,其中包含各种图标。
现在我需要将其中一个图标以20x20像素的大小显示出来。我尝试了一些方法,比如将大小设置为20像素,使用background-size:cover,或者使用transform:scale(0.625) - 但是我的所有尝试都没有给出我想要的结果。
我的测试HTML代码:
32px icons:
<div class="sprite" style="background-position:0px 32px;"> </div>
<div class="sprite" style="background-position:64px 32px;"> </div>
<div class="sprite" style="background-position:32px 96px;"> </div>
<div class="sprite" style="background-position:0px 0px;"> </div>
<div class="sprite" style="background-position:32px 64px;"> </div>
<hr>
20px icons (attempts):
<div class="sprite" style="background-position:32px 64px; width:20px; height:20px;"> </div>
<div class="sprite" style="background-position:32px 64px; width:20px; height:20px; background-size:cover;"> </div>
<div class="sprite" style="background-position:32px 64px; width:20px; height:20px; transform:scale(0.625);"> </div>
我的测试用CSS:
.sprite {
background-image:url(http://buildnewgames.com/assets/article//dom-sprites/spritesheet.png);
width:32px;
height:32px;
}
请查看这个fiddle,了解我尝试过的内容: