我遇到了使用Compass精灵水平对中精灵的问题。用SASS /指南针定位精灵
我有一堆图标大小不同的小精灵,我希望它们以它们所在的容器为中心,例如它们是左手边的图标。
如果我这样做:
$sprite-position: 50%;
@import "sprite/*.png";
图像并集中在产生sprite.png但实际上CSS是一样的东西:
background-position: -9px -223px;
而不是预期的:
background-position: 50% -223px;
如果它的位置具体为d这样的呃?现在我把它硬编码为50%,而Y轴很糟糕,因为当我添加一个新的精灵时,我必须改变它们,这完全无法达到目的。
我在Compass,CSS中做了这个错误还是只是不按它应该的那样工作? 我可以看到完成的唯一方法是让它指定尺寸,然后包含图标并将其居中。剩下的50%的价值在那里,所以你不需要这样做......对吧?
只是一个说明......它很糟糕,Compass也不支持JPEG精灵.- - 在头版页上有6个促销图片,它会很好,让他们成功地在那里你可以取代该文件夹中的图像及其排序!
感谢,大教堂
Dom,你能澄清一下实际问题是什么吗?从你在这里说的话来看,这听起来似乎看起来很正确,但你对编写CSS的方式并不满意。最终结果是否存在实际问题,或者您是否想要在图像更改后不需要重新编译的东西? – 2011-12-19 15:34:14
问题是我有一个60像素宽的div,我希望宽度为60像素(例如15,20,30,40,55像素)的图像可以在该Div中居中。所以通常你会创建一个精灵,在CSS中你会写:background-position:50%-223px来得到它。但Compass写出确切的左侧位置,这意味着它不居中,它仍然左对齐。它应该把它放在精灵的中间,它并没有什么不同。 CSS也需要改变。为了解决这个问题,我需要一个额外的div容器,并将子精灵居中。 – 2011-12-19 19:17:20