如果我理解正确,这就是您要执行的操作:
<div id="empty">
<img class="stars empty" src="http://cdn1.iconfinder.com/data/icons/icojoy/noshadow/standart/gif/24x24/001_17.gif">
</div>
<div id="half">
<img class="stars empty" src="http://cdn1.iconfinder.com/data/icons/icojoy/noshadow/standart/gif/24x24/001_17.gif">
<img class="stars half" src="http://cdn1.iconfinder.com/data/icons/icojoy/noshadow/standart/gif/24x24/001_16.gif">
</div>
<div id="full">
<img class="stars empty" src="http://cdn1.iconfinder.com/data/icons/icojoy/noshadow/standart/gif/24x24/001_17.gif">
<img class="stars half" src="http://cdn1.iconfinder.com/data/icons/icojoy/noshadow/standart/gif/24x24/001_16.gif">
<img class="stars starfull" src="http://cdn1.iconfinder.com/data/icons/icojoy/shadow/standart/png/24x24/001_15.png">
</div>
我将每个案例都包含在一个 div 中。要以您尝试的方式覆盖图像,您需要分配一个绝对位置。这是一个快速的 CSS,它说明了它将如何为您工作:
div {
position:relative;
height:2em;
}
.stars {
position:absolute;
top:0;
left:0;
}
希望这是你想要做的。您可以将其应用于任何类型的 html 标记元素,并且可以多次应用,10 次,100 次 =)
编辑:
我再次阅读了您的问题和所有评论......我认为您可以通过更改背景和/或使用重叠背景而不是重叠 html 元素来更轻松地做到这一点。我从上面使用了您的代码并说明了我在小提琴上的意思:http: //jsfiddle.net/38vHj/
无论如何,在javascript(或php或您想要处理信息的任何地方)中交换类要容易得多......然后使用特定的css类选择器。
最终解决方案:
所以是的……您可以重叠任何 html 标签元素!现在经过很多来回,我给你写了你想要的并将它发布在小提琴上:jsfiddle.net/ddXDp/2
So the end result is an additional empty star element under the half star element.
Now you just have to arrange and style the elements the way you wanted =)