我正在构建一个范围/滑块,将用户结果与平均值进行比较.我真的很难让滑块下的文本按我想要的方式运行:
我已经设法使箭头、百分比和文本与前两幅图像一样正确居中,但当我将位置设置得过高或过低时,文本会溢出到页面的另一个区域.我想要的是像最后两幅图像一样的行为,文本保持在其范围内.
我try 了两种不同的方法,但最终结果相同,现在我陷入了困境:
<div style="`margin-left:${areaScore}%;margin-right:${100 - areaScore}%;text-align:center`">
<div style="transform: translateX(-50%)" >^</div>
<div style="transform: translateX(-50%); width: 50px">
{{ areaScore }}%
</div>
<div style="transform: translateX(-50%); width: 150px">
The average in your area
</div>
</div>
<div style="position: relative; text-align: center">
<div :style="`position:absolute;left:${areaScore}%`">^</div>
<div :style="`position:absolute;left:${areaScore}%;top:10px`">
{{ areaScore }}%
</div>
<div :style="`position:absolute;left:${areaScore}%;top:24px`">
The average in your area
</div>
</div>
我可能应该提到,我使用的是Vue,因此使用了mustache 、冒号之前的样式和areaScore的参数化,但我认为这与我的问题并不特别相关.
我相信这个问题是可以解决的,但我已经浪费了太多时间试图找到解决方案,我希望有人能给我指出正确的方向.