我将CSS Sprite 技术与看起来像这样的背景图像一起使用:
图标的 CSS 代码:
div.icon {
background-color: transparent;
background-image: url("/images/icons.png");
background-position: 0 0;
background-repeat: no-repeat;
display: inline-block;
height: auto;
vertical-align: text-top;
width: auto;
}
div.icon:empty {
width:16px;
height:16px;
}
div.icon:not(:empty) {
padding-left:20px;
}
div.icon.attenuation {
background-position: 0 0;
}
我的图标可以这样使用:
<div class="icon warning"></div>
我想在我的图标中添加一些文本,例如:
<div class="icon warning">There is a warning on this page</div>
但问题是背景图片覆盖了整个文本区域:
问题是:如何仅将图像的一部分用作部分元素的背景图像?
笔记:
- 设置
width
为16px
fordiv.icon
没有帮助。