2012-12-19 124 views
1

我想制作一个星级评分类型的系统,并且只是在一分钟内在css部分上工作。我已经做了,这样的恒星在CSS中使用背景图像通过背景图像是这样点燃了所代替:悬停后保持背景图像?

.hover-stars:hover{ 
    background-image: url(http://www.softwares.com/img/icons/favorites.png); 
    background-repeat: no-repeat;  
} 

什么,我想尝试和所知道的是实施后悬停影响,所以一旦用户在其上方移动,图像就会停留在那里。如果可能的话撤消,如果用户应该再次将其悬停在它上面。创造出明星们追随用户鼠标线索的错觉。

我试过这个,但它不起作用。

.hover-stars:hover:after{ 
    background-image: url(http://www.softwares.com/img/icons/favorites.png); 
    background-repeat: no-repeat; 
} 
+2

的':after'选择“之后有所行动”,但在指定后并不意味着DOM元素。所以,当你做'.hover-stars:盘旋:在'之后'你是在真实地塑造星星之后的元素。 我不认为有一种方法可以用CSS实现这一点。你可能想看看一些JavaScript解决方案。 – nienn

回答

1

:after选择器在元素后插入内容。所以这不是使用它的正确方法。我不相信你正在寻找什么可以用CSS来完成。你可以通过addingremoving类来查看jQuery为你做的诀窍,hover上的元素。例如...

$(".hover-stars").hover(
function() { $(this).addClass(".hover-star-after") 
});​ 

,然后添加你要添加额外的CSS类...

.hover-stars-after { 
background-image: url('http://www.softwares.com/img/icons/favorites.png'); 
background-repeat: no-repeat; 
}