我怎样才能添加这个value text to the center of the inupt滑块
<div class="range-wrap"><div class="bubble"></div><br>
<input type="range" min="30" max="400" value="50" class="range" style="text-align:right;">
我怎样才能添加这个value text to the center of the inupt滑块
<div class="range-wrap"><div class="bubble"></div><br>
<input type="range" min="30" max="400" value="50" class="range" style="text-align:right;">
data-*
属性存储当前值(以及所需的前缀,如"music:)::after
伪创建文本工具提示值的工具提示content
属性和attr(data-*)
打印数据属性const rangeTooltip = (elRange) => {
elRange.dataset.value = `${elRange.querySelector("[type=range]").value}%`;
};
const range = (elRange) => {
elRange.addEventListener("input", () => rangeTooltip(elRange));
rangeTooltip(elRange);
};
document.querySelectorAll(".range").forEach(range);
body {
background: #2b2219;
font: 16px/1.4 sans-serif;
}
.range {
position: relative;
width: 220px;
}
.range::after {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
display: flex;
justify-content: center;
align-items: center;
content: attr(data-prefix) attr(data-value);
color: #fff;
opacity: 0.7;
pointer-events: none; /* prevent pointer interaction */
}
input[type=range] {
appearance: none;
width: inherit;
cursor: pointer;
}
input[type=range]:focus {
outline: none;
}
input[type=range]::-webkit-slider-runnable-track {
height: 2rem;
box-shadow: 0 0 0 2px #000, inset 0 0 0 1px #fff1;
background: #2b2b2b;
}
input[type=range]::-webkit-slider-thumb {
appearance: none;
box-shadow: 0 0 0 2px #000, inset 0 0 0 1px #fff2;
height: 100%;
width: 1rem;
border-radius: 3px;
background: #6d6e70;
cursor: pointer;
border-radius: 0;
}
input[type=range]:focus::-webkit-slider-runnable-track {
background: #313131;
}
<div class="range" data-prefix="Music:">
<input type="range" min="0" max="100" value="100">
</div>
<div class="range" data-prefix="Effects:">
<input type="range" min="0" max="100" value="100">
</div>
<div class="range" data-prefix="Difficulty:">
<input type="range" min="0" max="100" value="50">
</div>
所以:
<center>
已弃用.改用cssstyle
和on*
处理程序属性