如何使用CSS制作简单评分星星_hover与伪类结合


使用CSS的:hover和::before伪元素,结合兄弟选择器~,可实现鼠标悬停时从左到右高亮显示星形评分的效果,通过data-value标记分值,利用Unicode字符“★”在span元素前插入星星,默认颜色设为灰色,悬停时及其后续兄弟元素的::before颜色变为金色,从而达成无需J*aScript的交互式星级评分效果。

如何使用css制作简单评分星星_hover与伪类结合

想用CSS实现一个简单的评分星星效果,让用户在鼠标悬停时看到高亮的星形反馈?只需要结合 :hover::before(或 ::after)伪元素,就能做出美观又轻量的交互效果,无需J*aScript。

基本HTML结构

使用一组带类名的空元素(如span),每个代表一颗星。通过data属性标记分值,便于样式控制:

<div class="rating">
  <span class="star" data-value="1"></span>
  <span class="star" data-value="2"></span>
  <span class="star" data-value="3"></span>
  <span class="star" data-value="4"></span>
  <span class="star" data-value="5"></span>
</div>

用伪类显示星形

借助字体图标(比如Font Awesome)或Unicode字符,通过 ::before 插入星形符号。默认为灰色空心星,悬停及之前的星星变为实心黄色:

MarketingBlocks AI MarketingBlocks AI

AI营销助理,快速创建所有的营销物料。

MarketingBlocks AI 27 查看详情 MarketingBlocks AI
.star {
  display: inline-block;
  font-size: 24px;
  color: #ccc;
  cursor: pointer;
}

.star::before {
  content: "★";
  color: #ddd;
}

.star:hover,
.star:hover ~ .star {
  color: transparent;
}

.star:hover::before,
.star:hover ~ .star::before {
  color: gold;
}

实现悬停累积效果

关键是利用兄弟选择器 ~。当某个星被hover时,它和它之后的所有兄弟.star都会触发样式变化。通过控制 ::before 的颜色,实现“从左到右点亮”的视觉反馈:

  • 给每个 star 添加 hover 状态
  • 用 ~ 选择后续所有 star
  • 统一修改它们伪元素的颜色
  • 确保父容器 display 正确,避免换行影响

基本上就这些。不复杂但容易忽略细节,比如 color 和 ::before 颜色要分开处理,否则会重复上色。这种做法兼容性好,适合静态评分展示或简单交互场景。

以上就是如何使用CSS制作简单评分星星_hover与伪类结合的详细内容,更多请关注其它相关文章!


# 滑动门  # 洛阳信息优化师招聘网站  # 福泉市seo  # 枣庄营销线上推广方案  # 商河seo内容页优化  # 企业客户网站建设  # 无锡网站推广运营  # 免费seo推广软件引流  # 嘉陵区推广营销招聘网站  # seo基础金手指排名五  # 南通企业网站推广  # 相关文章  # 一颗  # 设为  # css  # 就能  # 有什么特点  # 分值  # 鼠标  # 选择器  # 如何使用  # 伪元素  # go  # html  # java  # javascript  # 评分星星 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894


相关推荐: 电脑开不了机怎么办 电脑无法开机的解决方法  漫蛙app官方版手机正版入口-漫蛙漫画manwa在线漫画正版入口  CSS动画如何实现图标旋转并放大_transform rotate scale @keyframes实现  教育查询官方网站入口 教育个人档案查询免费官网  C#中的Record类型有什么优势?C# 9新特性Record与Class的用法区别  优化CSS动画与J*aScript定时器协同:构建稳定Toast提示  阿里旺旺电脑网页版入口 阿里旺旺电脑版网页登录入口  微信客户端怎么查看二维码_微信客户端个人二维码查看方法  mysql触发器如何编写_mysql触发器编写规范与代码示例讲解  4399正版网页版入口高清直达链接  芒果TV官网登录入口 芒果TV官方网站登录入口  网页版网易云音乐入口_网易云音乐在线官网登录  使用document.execCommand实现Web文本编辑器加粗/取消加粗  《三国:谋定天下》平民全阶段通用阵容  如何在CSS中使用伪类选择器_hover实现悬停效果  外媒评《燕云十六声》DIY载具新玩法:很像《塞尔达传说王国之泪》!  《百果园》充值余额方法  sublime怎么快速在浏览器中预览HTML_sublime配置View in Browser教程  word文档行距怎么调?word文档调行距的操作步骤  《火花chat》搜索好友方法  J*aScript实现下拉菜单驱动的动态表格数据展示  《下一站江湖2》独孤剑诀习得方法  解决J*aScript动态图片上传中ID重复问题:在同一页面显示多张独立图片  139邮箱登录入口官网 139邮箱登录入口官网网址  《一起考教师》账号注销方法  小米手机屏幕失灵乱跳怎么办 屏幕触控问题自检与临时解决方法【应急】  《海底捞》点外卖方法  抖音号已注销怎么解绑企业认证?不解绑企业认证会怎样?  纯CSS实现自适应宽度与响应式布局的水平按钮组  cad怎么隐藏指定的图层_cad隐藏或冻结图层方法  猫眼电影app怎么查询电影院的营业时间_猫眼电影影院营业时间查询教程  德邦快递收费标准详解  GBA模拟器手柄按键设置  嘀嗒顺风车如何开具电子发票  Django模型动态关联检查:高效管理复杂关系  B站怎么快速升级 B站用户等级提升攻略【详解】  《梦想世界:长风问剑录》药师一图流分享  自定义你的VS Code状态栏,监控关键信息  使用逻辑应用(Logic Apps)自动处理邮件附件中的XML到Excel  稻壳阅读器官方直达网址链接 稻壳阅读器文档阅读平台主页资源入口  TikTok视频播放中断怎么办 TikTok播放异常修复方法  创建快捷方式启动系统保护  PHP utf8_encode 字符编码转换陷阱与解决方案  windows server2019显卡驱动怎么安装_winserver2019显卡驱动安装与远程桌面优化  微信朋友圈怎么设置三天可见 微信朋友圈设置指定天数可见步骤【教程】  LINUX怎么查看显卡信息_LINUX查看GPU状态  《地下城堡4:骑士与破碎编年史》墓穴挑战125攻略  视频转蓝光m2ts格式  J*aScript模拟悬停与点击:自动化网页动态元素交互指南  PHP魔术方法__set与__isset:设计考量、性能权衡与静态分析的视角 

 2025-11-13

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.