gpt4 book ai didi

html - CSS - 评级 css 系统

转载 作者:太空宇宙 更新时间:2023-11-03 22:38:46 25 4
gpt4 key购买 nike

我正在使用我在网上找到的一些评级系统 CSS。目前我能够让它工作,但是当显示多个评级时会出现问题。

只有最后一个分级类有效。

.rate {
float: left;
pointer-events: none;
}

.rate:not(:checked)>input {
position: absolute;
top: -9999px;
}

.rate:not(:checked)>label {
float: right;
width: 1em;
overflow: hidden;
white-space: nowrap;
cursor: pointer;
font-size: 30px;
color: #ccc;
}

.rate:not(:checked)>label:before {
content: '★ ';
}

.rate>input:checked~label {
color: #ffc700;
}

.rate:not(:checked)>label:hover,
.rate:not(:checked)>label:hover~label {
color: #deb217;
}

.rate>input:checked+label:hover,
.rate>input:checked+label:hover~label,
.rate>input:checked~label:hover,
.rate>input:checked~label:hover~label,
.rate>label:hover~input:checked~label {
color: #c59b08;
}
<div class="rate">
<input type="radio" id="star5" name="rate" value="5" />
<label for="star5" title="text">5 stars</label>
<input type="radio" id="star4" name="rate" value="4" checked/>
<label for="star4" title="text">4 stars</label>
<input type="radio" id="star3" name="rate" value="3" />
<label for="star3" title="text">3 stars</label>
<input type="radio" id="star2" name="rate" value="2" />
<label for="star2" title="text">2 stars</label>
<input type="radio" id="star1" name="rate" value="1" />
<label for="star1" title="text">1 star</label>
</div>

<div class="rate">
<input type="radio" id="star5" name="rate" value="5" checked/>
<label for="star5" title="text">5 stars</label>
<input type="radio" id="star4" name="rate" value="4" />
<label for="star4" title="text">4 stars</label>
<input type="radio" id="star3" name="rate" value="3" />
<label for="star3" title="text">3 stars</label>
<input type="radio" id="star2" name="rate" value="2" />
<label for="star2" title="text">2 stars</label>
<input type="radio" id="star1" name="rate" value="1" />
<label for="star1" title="text">1 star</label>
</div>

只有最后一个 div 可以正常工作。

最佳答案

如果所有单选按钮上都有相同的“名称”标签,即使它们位于 2 个不同的 div 中,它们也将被视为只有一组单选按钮。

此外,在元素上使用重复的 id 是不好的做法

要修复它,您应该拥有这样的 html https://jsfiddle.net/cornelraiu/70sk3ft6/1/ :

<div class="rate">
<input type="radio" name="rate" value="5" />
<label title="text">5 stars</label>
<input type="radio" name="rate" value="4" checked/>
<label title="text">4 stars</label>
<input type="radio" name="rate" value="3" />
<label title="text">3 stars</label>
<input type="radio" name="rate" value="2" />
<label title="text">2 stars</label>
<input type="radio" name="rate" value="1" />
<label title="text">1 star</label>
</div>

<div class="rate">
<input type="radio" name="rate1" value="5" checked/>
<label title="text">5 stars</label>
<input type="radio" name="rate1" value="4" />
<label title="text">4 stars</label>
<input type="radio" name="rate1" value="3" />
<label title="text">3 stars</label>
<input type="radio" name="rate1" value="2" />
<label title="text">2 stars</label>
<input type="radio" name="rate1" value="1" />
<label title="text">1 star</label>
</div>

关于html - CSS - 评级 css 系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44960998/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com