基本上,我想要一个适用于对与错的范围滑块。
fieldset > * {
vertical-align: middle;
}
.quiz-label-left, .quiz-label-right{
display: inline-block;
width: 50px;
padding: 2px;
text-align: center;
}
.quiz-slider {
-webkit-appearance: none;
display: inline-block;
width: 100px;
height: 25px;
background: #d3d3d3;
outline: none;
opacity: 0.7;
-webkit-transition: .2s;
transition: opacity .2s;
}
.quiz-slider:hover {
opacity: 1;
}
.quiz-slider::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 25px;
height: 25px;
background: #4CAF50;
cursor: pointer;
}
.slider::-moz-range-thumb {
width: 25px;
height: 25px;
background: #4CAF50;
cursor: pointer;
}
.slider-div {
width: 100%;
margin: 0 auto;
}
<fieldset>
<span class="quiz-label quiz-label-left">TRUE</span>
<input type="range" class="quiz-slider" name="quiz-slider" min="0" max="2" step="1" value="1">
<span class="quiz-label quiz-label-right">FALSE</span>
</fieldset>
这个想法是使用2作为true,0作为false,以及1作为默认值。问题是,在这么小的范围内,拇指不会移动太多。理想情况下,我会一直将拇指一直移动到最后一个答案。有谁知道该怎么做?
答案 0 :(得分:1)
因此,显然发生的是滑块从选择器继承了填充
.quiz-card * {
padding: 0px 30px;
}
这使我的拇指移动范围很小。将滑块的填充设置为0即可解决此问题。
.quiz-slider {
-webkit-appearance: none;
display: inline-block;
width: 100px;
height: 25px;
background: #d3d3d3;
outline: none;
opacity: 0.7;
-webkit-transition: .2s;
transition: opacity .2s;
padding: 0;
}
答案 1 :(得分:0)
简单:
document.getElementsByClassName("quiz-slider")[0].value = 2;
Id和标记名称选择器也可以使用。 这是完整的代码:
document.getElementsByClassName("quiz-slider")[0].value = 2;
fieldset > * {
vertical-align: middle;
}
.quiz-label-left, .quiz-label-right{
display: inline-block;
width: 50px;
padding: 2px;
text-align: center;
}
.quiz-slider {
-webkit-appearance: none;
display: inline-block;
width: 100px;
height: 25px;
background: #d3d3d3;
outline: none;
opacity: 0.7;
-webkit-transition: .2s;
transition: opacity .2s;
}
.quiz-slider:hover {
opacity: 1;
}
.quiz-slider::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 25px;
height: 25px;
background: #4CAF50;
cursor: pointer;
}
.slider::-moz-range-thumb {
width: 25px;
height: 25px;
background: #4CAF50;
cursor: pointer;
}
.slider-div {
width: 100%;
margin: 0 auto;
}
<!doctype html>
<html>
<body>
<fieldset>
<span class="quiz-label quiz-label-left">TRUE</span>
<input type="range" class="quiz-slider" name="quiz-slider" min="0" max="2" step="1" value="1">
<span class="quiz-label quiz-label-right">FALSE</span>
</fieldset>
</body>
</html>