我想问你是否可以对不同的 HTML 元素使用相同的背景图像?
意思是,我有 HTML 代码(其中的一部分):
<div class="src">
<form action="#">
<input type="text" class="text" />
<input type="submit" class="submit" />
</form>
</div>
<div class="menu">
<ul class="level1">
<li class="test1"><a href="#">Test1</a></li>
<li class="test2"><a href="#">Test2</a></li>
</ul>
</div>
和简单的CSS
.src {
background: url(images.png) 0 -45px no-repeat;
}
.menu ul.level1 li {
background: url(images.png) 0 0 no-repeat;
}
.menu ul.level1 li.test1 {
background-position:-15px -120px;
}
.menu ul.level1 li.test2 {
background-position: -50px -120px;
}
这个技术好吗?它占用更少的 HTTP 请求?
如何在 CSS 中编写一个通用的背景图片,并针对不同的 HTML 元素仅使用 background-position?或者不可能?
意思是:
.generic {
background: url(images.png) no-repeat;
}
.src {
background-position: 0 -45px;
}
.menu ul.level1 li {
background-position: 0 0;
}
.menu ul.level1 li.test1 {
background-position:-15px -120px;
}
.menu ul.level1 li.test2 {
background-position: -50px -120px;
}
谢谢
最佳答案
是的,这很好。
您可以简单地为每个将使用它的元素声明背景图像,如下所示:
.element1, .element2, .element3 {
background-image:url(image.png);
background-repeat:no-repeat;
}
然后像您所做的那样声明每个元素的背景位置。
关于html - 使用 CSS Sprite 为不同的 HTML 元素使用单个背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11718046/