css和input实现评分的星星

HTML的部分:

   <div class="rate-content" style="width:150px">

            <input type="radio" name="rate">

            <input type="radio" name="rate">

            <input type="radio" name="rate">

            <input type="radio" name="rate">

            <input type="radio" name="rate">

        </div>

 

css部分:

//先去隐藏input

input {

    -webkit-appearance: none;

    border: none;

    outline: none;

    cursor: pointer;

}

//默认星星的颜色

.rate-content {

    display: flex;

    flex-flow: row-reverse;

    $main: #ffa8ff;

    $basic: #999;

    input[name="rate"] {

    font-family: "iconfont";

    font-size: 30;

    margin:0 10px;

        &::after {

            content: "\e645";

            color: $basic;

            transition: color .4s ease;

        }

    }

    input[name="rate"] {

        transition: transform .2s ease; // 加入过渡效果

     // 高亮的星

        &:checked,

        &:hover {

            &::after {

                content: "\e73c";

                color: $main;

            }

            & ~ input[name="rate"] {

                &::after {

                    content: "\e73c";

                    color: $main

                }

            }

        }

//hover 放大     

   &:hover {

            transform: scale(1.2);

        }

    }

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是一个简单的星星评分系统的 HTMLCSS 代码示例: HTML 代码: ```html <div class="rating"> <input type="radio" id="star5" name="rating" value="5"> <label for="star5"></label> <input type="radio" id="star4" name="rating" value="4"> <label for="star4"></label> <input type="radio" id="star3" name="rating" value="3"> <label for="star3"></label> <input type="radio" id="star2" name="rating" value="2"> <label for="star2"></label> <input type="radio" id="star1" name="rating" value="1"> <label for="star1"></label> </div> ``` CSS 代码: ```css .rating { display: inline-block; position: relative; height: 1em; font-size: 1em; line-height: 1; } .rating input { display: none; } .rating label { display: inline-block; position: absolute; cursor: pointer; width: 1em; height: 1em; margin: 0; padding: 0; background: url('https://cdn.jsdelivr.net/gh/linxz/img-repo/images/star.png') no-repeat; } .rating label:hover, .rating label:hover ~ label, .rating input:checked ~ label { background-position: 0 0; } ``` 该代码使用了 `input` 标签的 `type` 属性为 `radio`,并且为每个评分选项设置了不同的 `id` 和 `value` 属性,同时为每个选项设置了 `label` 标签,其中的 `for` 属性与对应的 `input` 标签的 `id` 属性相同,以实现点击标签即可选择对应的评分选项。CSS 代码则定义了星星评分的外观,包括星星的背景图片、鼠标悬停和选中状态下的星星外观等。您可以根据自己的需求修改这个代码,并将其嵌入到您的网页中。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值