我使用Sass有以下css,但出于某种原因我只得到1张图片,甚至不知道哪个元素正在添加它。
ul {
position: relative;
li {
font: normal 18px/22px Arial, sans-serif;
list-style-type: none;
}
li:before {
background: url(img/sprite2.png") no-repeat scroll -372px -391px rgba(0, 0, 0, 0);
content: "";
height: 25px;
left: 0;
position: absolute;
top: 8px;
width: 20px;
list-style-type: none;
}
}
答案 0 :(得分:1)
由于li:before
绝对定位,您需要相对定位每个li
,以便相应的:before
相对于其父li
定位。否则,所有:before
个伪元素都相对于ul
定位,当然它们都堆叠在一起。
li {
position: relative;
font: normal 18px/22px Arial, sans-serif;
list-style-type: none;
}
答案 1 :(得分:1)
从样式中删除“顶部”,你没事。 这是一个jsFiddle:http://jsfiddle.net/4L9je4tx/
ul
{
position: relative;
}
li
{
font: normal 18px/22px Arial, sans-serif;
list-style-type: none;
}
li:before
{
background: url("img/sprite.png") no-repeat scroll -372px -391px rgba(0, 0, 0, 0);
content: "";
height: 25px;
left: 0;
position: absolute;
width: 20px;
list-style-type: none;
}