我有多个图标,我试图推导出一种通用的方法,将它们中的任何一个用作“按钮” - 我将其定义为与带有一点额外周围空间的图标完全相同。
background-clip: content-box
所以我不从精灵中挑选任何其他图像我知道我可以添加一个包装元素作为解决方法,但不喜欢,因为这是一个包含遗留内容的现有网站,我不想重新构建到那个程度。
@pad: 6px;
.iconA {
background-image: url("sprite.png");
background-position: -100px -50px;
}
.iconAButton {
background-clip: content-box;
padding: @pad;
&:extend(.icon-minus);
background-position: getRule(.iconA, 'background-position-x') + @pad
getRule(.iconA, 'background-position-y') + @pad;
}
我能看到的最可行的解决方案是声明两个变量,例如: @iconAOffsetX
和@iconAOffsetY
使用.iconA
和.iconAButton
中的变量,但这不是一个可扩展的解决方案。