纯CSS实现星级评分组件

js 复制代码
//html
<input type="range" name="star" min="0" max="5" step="0.5">


//css
		input[type="range"]{
          -webkit-appearance: none;
          width: 1.9rem;
          margin: 0;
          outline: 0;
        }
        input[type="range" i]::-webkit-slider-runnable-track {
          background: #facc01;
          height: 0.38rem;
          -webkit-mask: url("../img/star.png");
          -webkit-mask-size:  0.38rem;
          -webkit-mask-repeat: repeat-x;
        }
        input[type="range" i]::-webkit-slider-thumb {
          -webkit-appearance: none;
          width: 0;
          height: 100%;
          box-shadow: 999px 0px 0px 999px #f2f2f8;
        }

        /* 火狐 */
        input[type=range]{
          -webkit-mask: url("../img/star.png");
          -webkit-mask-size:  0.38rem;
          -webkit-mask-repeat: repeat-x;
          height: 0.38rem;
        }
        input[type=range]::-moz-range-track{
          background: #f2f2f8; //星星颜色
          height: inherit;
        }
        input[type=range]::-moz-range-progress {
          background: #facc01;  //背景颜色
          height: inherit;
        }
        input[type=range]::-moz-range-thumb {
          width: 0;
          opacity: 0;
        }

图片文件(star.png)

相关推荐
Sailing17 分钟前
🚀 别再乱写 16px 了!CSS 单位体系已经进入“计算时代”,真正的响应式布局
前端·css·面试
喝水的长颈鹿33 分钟前
【大白话前端 03】Web 标准与最佳实践
前端
爱泡脚的鸡腿34 分钟前
Node.js 拓展
前端·后端
左夕2 小时前
分不清apply,bind,call?看这篇文章就够了
前端·javascript
Zha0Zhun2 小时前
一个使用ViewBinding封装的Dialog
前端
兆子龙2 小时前
从微信小程序 data-id 到 React 列表性能优化:少用闭包,多用 data-*
前端
滕青山2 小时前
文本行过滤/筛选 在线工具核心JS实现
前端·javascript·vue.js
时光不负努力2 小时前
编程常用模式集合
前端·javascript·typescript
恋猫de小郭3 小时前
Apple 的 ANE 被挖掘,AI 硬件公开,宣传的 38 TOPS 居然是"数字游戏"?
前端·人工智能·ios
小岛前端3 小时前
Node.js 宣布重大调整,运行十年的规则要改了!
前端·node.js