CSS 星级评价效果代码_ Div+Css教程-查字典教程网
CSS 星级评价效果代码
CSS 星级评价效果代码
发布时间:2016-12-27 来源:查字典编辑
摘要:先来个截图:效果很简单,可能现在您现在脑子里已经有实现的思路了。下面先看一下我们通常情况下的实现方法:CSS:代码.jsstar{list-...

先来个截图:

效果很简单,可能现在您现在脑子里已经有实现的思路了。下面先看一下我们通常情况下的实现方法:

CSS:

代码

.jsstar

{ list-style: none;

margin: 0px;

padding: 0px;

width: 100px;

height: 20px;

position: relative;

}

.jsstar li

{

padding:0px;

margin: 0px;

float: left;

width:20px;

height:20px;

background:url(star_rating.gif) 0 0 no-repeat;

}

HTML:

<p>Javascript + CSS实现</p>

<ul>

<li title="一星"></li>

<li title="二星"></li>

<li title="三星"></li>

<li title="四星"></li>

<li title="五星"></li>

</ul>

JS:(我用的是jquery)

<script type="text/javascript" src="http://common.jb51.net/jslib/jquery/jquery.js"></script>

<script type="text/javascript">

$(document).ready(function(){

$(".jsstar >li").hover(

function(){$(this).css({"background-position":"left bottom"}).prev().trigger("mouseover")},

function(){$(this).css({"background-position":"left top"}).prev().trigger("mouseout")})

.click(function(){alert($(this).attr("title"))});

});

</script>

这里是效果图:

是不是和上面的没什么区别,可是又一想如果用户禁掉了javascript岂不是效果很惨?

于是我们想到了用纯CSS实现,下面是代码:

CSS:

代码

/*CSS Star start*/

.star-rating

{

list-style: none;

margin: 0px;

padding: 0px;

width: 100px;

height: 20px;

position: relative;

background: url(star_rating.gif) top left repeat-x;

}

.star-rating li

{

padding: 0px;

margin: 0px;

float: left;

}

.star-rating li a

{

display: block;

width: 20px;

height: 20px;

text-decoration: none;

text-indent: -9000px;

z-index: 20;

position: absolute;

padding: 0px;

}

.star-rating li a:hover

{

background: url(star_rating.gif) left bottom;

z-index: 1;

left: 0px;

}

.star-rating a.one-star

{

left: 0px;

}

.star-rating a.one-star:hover

{

width: 20px;

}

.star-rating a.two-stars

{

left: 20px;

}

.star-rating a.two-stars:hover

{

width: 40px;

}

.star-rating a.three-stars:hover

{

width: 60px;

}

.star-rating a.three-stars

{

left: 40px;

}

.star-rating a.four-stars

{

left: 60px;

}

.star-rating a.four-stars:hover

{

width: 80px;

}

.star-rating a.five-stars

{

left: 80px;

}

.star-rating a.five-stars:hover

{

width: 100px;

}

HTML:

<ul>

<li><a href='#' title='一星'>1</a></li>

<li><a href='#' title='二星'>2</a></li>

<li><a href='#' title='三星'>3</a></li>

<li><a href='#' title='四星'>4</a></li>

<li><a href='#' title='五星'>5</a></li>

</ul>

看看上面CSS的行号您是不是吓了一跳,这么简单的效果竟然用了这么多代码?在我看来不用JS就只能一个效果一个样式了,如果您还有更简单更炫的效果请指教!

代码打包下载

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新 Div+Css教程学习
    热门 Div+Css教程学习
    网页设计子分类