css实现五角星评分

原文

原文有更多攒劲效果

效果

在这里插入图片描述

HTML

<div class="star-rating">
<div class="star-rating-top" style="width:50%">
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
<div class="star-rating-bottom">
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
</div>

CSS

.star-rating {
    unicode-bidi: bidi-override;
    color: #ddd;
    font-size: 0;
    height: 25px;
    margin: 0 auto;
    position: relative;
    display: table;
    padding: 0;
}

.star-rating span {
    margin: 0 3px;
    font-size: 20px;
}

.star-rating span:after {
    content: "★";
}

.star-rating-top {
    color: #FFAF00;
    padding: 0;
    position: absolute;
    z-index: 1;
    display: block;
    top: 0;
    left: 0;
    overflow: hidden;
    white-space: nowrap;
}

.star-rating-bottom {
    padding: 0;
    display: block;
    z-index: 0;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在HTML中,创建一个五角星评分系统通常会使用HTML元素和CSS样式相结合。下面是一个简单的例子,展示如何使用HTML结构以及一些基本的CSS实现五角星评分: ```html <!DOCTYPE html> <html lang="en"> <head> <style> .star-container { display: inline-block; position: relative; } .star-fill { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #ccc; /* 默认灰色 */ } .filled-star::before { content: "\2605"; font-size: 24px; color: gold; } .filled-star { cursor: pointer; } .filled-star:hover ~ .star-fill { width: 90%; } .filled-star:active ~ .star-fill { width: 80%; } </style> </head> <body> <div class="star-container"> <i class="filled-star" title="1 star"></i> <span class="star-fill"></span> <i class="filled-star" title="2 stars"></i> <span class="star-fill"></span> <i class="filled-star" title="3 stars"></i> <span class="star-fill"></span> <i class="filled-star" title="4 stars"></i> <span class="star-fill"></span> <i class="filled-star" title="5 stars"></i> <span class="star-fill"></span> </div> </body> </html> ``` 这个例子中: - `.star-container` 是一个包含所有星星的容器,使用`display: inline-block`使其成为行内块级元素。 - `.star-fill` 是一个隐藏的span元素,用于实现鼠标悬停和点击效果。 - `.filled-star` 是每个填充的星星,`::before`伪元素用于显示星号图标。 - 使用CSS的`:hover`和`:active`伪类,当鼠标悬停或点击时,对应填充的宽度逐渐增加,模拟评分效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值