实现的效果,后台获取的数值是9.0,那么在前台html页面显示的星星如下:
素材如下:
素材就这一张图,
搞了好长时间,不知道如何搞的,百度找的都是两张图的,新手求救这种一张图的如何实现,谢谢~!
实现的效果,后台获取的数值是9.0,那么在前台html页面显示的星星如下:
素材如下:
素材就这一张图,
搞了好长时间,不知道如何搞的,百度找的都是两张图的,新手求救这种一张图的如何实现,谢谢~!
灰色星星一个DIV,金色星星一个DIV。星星做DIV的背景图。 灰色的和金色的DIV位置相同,金色的在上层。金色星星就好比遮罩层一样,或者就跟刮奖的涂层一个意思。
然后你调整金色星星DIV的宽度,比如4.5分,你就设置金色DIV宽度=灰色DIV除以10(因为有10档星级)乘以4.5 就可以了。
就这个意思,具体实现方法还有很多,喜欢哪个就用哪个。实在不行还可以去找评分星星的源码。
哎呀,不好意思,没看清你的需求。。
你这个要求就用雪碧图做。百度CSS 雪碧图。
雪碧图就是把整张图载入,需要显示哪个区域设置就好了。就是分块显示。 这图片分成一条一条的,一次显示一条就可以了。
8 回答5.8k 阅读✓ 已解决
9 回答9.2k 阅读
6 回答4.7k 阅读✓ 已解决
5 回答3.5k 阅读✓ 已解决
5 回答8k 阅读✓ 已解决
4 回答7.9k 阅读✓ 已解决
5 回答7.6k 阅读
看素材有0-10一共10档,那可以这样,相应的元素宽高定好,然后
background-image
定基础素材,再搞从star0到star10一共10个类,里边放对应分值的background-position
定位,从后台拿到分值数据的时候去小数点转字符串,然后加个“star”前缀直接拼到类名里就行了。用类名而不是直接改css主要是性能考虑,而且类名的话后期如果出现改分需求的时候,操作也更舒服。另外也可以给元素加个0.2秒左右的过渡,这样会稍稍有点动画的效果(不宜过长,否则定位会穿帮)。