会员中心
用户名:    密码:    验证码:      免费注册会员

jquery手册   CSS2手册       请关注健康

CSSer > 客户端开发 > web标准与前台开发 > 用css制作星级评分

来源: 作者:greengnn翻译 发布时间:2007-03-08
雅虎收藏夹 百度收藏 Google书签 Yahoo书签 新浪ViVi 搜狐网摘 365Key网摘 天极网摘 diglog 和讯网摘 POCO网摘 YouNote网摘 博拉网 天下图摘 Del.icio.us digg reddit spurl BlinkList blogmarks
原文:creating a star rater using css
链接:http://komodomedia.com/blog/index.php/2005/08/24/creating-a-star-rater-using-css/
版权:版权归原作者所有,翻译文档版权归greengnn所有。

第一个模型中忽视了半星级的情况和无初始的星级,下来我们就是要解决这个问题。
现回顾一下第一个模型,文章地址
对这篇文章不理解的建议去看看用css制作星级评分i

step 1: 先看看效果 | heck it in action

Please click to zoom in!


step 2: the xhtml
<ul class="star-rating">
<li class="current-rating">currently 3.5/5 stars.</li>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>


和第一个模型的结构相似,唯一不同的是:
<li class="current-rating">currently 3.5/5 stars.</li>
定义初始值

step 3: the star image

我们制作一个有三个星的图片,第一个星是空值,第二个是要选择的值,第三个是真实的值。

Please click to zoom in!


step 4: the css, the magic
.star-rating li.current-rating {
background: url(star_rating.gif) left bottom;
position: absolute;
height: 30px;
display: block;
text-indent: -9000px;
z-index: 1;
}

定义了初始值,为了避免继承容器ul的相对定位,采用position: absolute;每个星的高度为height:30px;别的就是隐藏文本和定义对齐方式。

空值css:
.star-rating {

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


选择值css:
.star-rating li a:hover {
background: url(star_rating.gif) left center;

}

初始值当然会随着选择变动,那么怎样实现它的变化呢?
<li class="current-rating" style="width:105px;">currently 3.5/5 stars.</li>

看了这段代码相信你就知道是什么原因了!那这个width是怎样计算的呢?

average rating|平均值: 3.5
each star width|每个星的宽度: 30px;
set width to|将宽度设为: 3.5 * 30 = 105px

下面欣赏一下这个新模型吧?

相关文章

  • 纯css制作三角形

    三角的一个特殊做法: CSS部分: em { display:block; font:0/0 宋体; border:6px solid; border-color:#fff #fff #fff #0

  • 让select也炫起来

    大家都见过用CSS定义的各色的input按钮,但对于select却无法用定义input的简单方式来实现。下面提供另外一种css定义的方式

  • label标签的使用

    label标签有两个属性是非常有用的,一个是for、另外一个就是accesskey。 for属性 功能:表示label标签要绑定的HTML元素,点

  • 常用CSS长度单位

    em 相对长度单位。相对于当前对象内文本的字体尺寸。 如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体

  • IE默认input按钮的常见问题

    在制作按钮的时候大家一般都很头疼,经常会出现这样那样问题,搞得很烦恼,那对于IE默认情况下的input按钮我们经常会碰见

  • after的使用:清除DIV浮动

    特点: 不需要另外加个清除DIV. :after(伪对象)设置在对象后发生的内容,通常和content配合使用,IE不支持此伪对象,非I

  • 用CSS模拟块的阴影效果

    在对于块的阴影效果,大家在平时的设计中大概一般都使用图片来解决,Blank也是如此,那大家是否试想过用CSS来模拟呢? 一

  • 几个常见注释理解

    1、选择器(child selector) 如果你想在IE中隐藏一个CSS定义,可以使用子选择器。 css部分: htmlbody p { /* declaratio