HTML5 滑块的拇指不能覆盖轨道

HTML5 slider bar's thumb can't cover the track

我用 html5 和 css 做了一个滑块,像这样。

function showValue(value) {
  document.getElementById("range").innerHTML = value;
}
.c-zoombar {
  -webkit-appearance: none;
  background: none;
  outline: none;
  overflow: hidden;
  width: 200px;
  height: 20px;
}
.c-zoombar::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: #5e6fd9;
  border: 1px solid #fff;
  border-radius: 50%;
  height: 12px;
  position: relative;
  top: -5.5px;
  transition: .2s;
  width: 12px;
}
.c-zoombar::-webkit-slider-runnable-track {
  background: transparent;
  border: 1px solid #000;
  border-radius: 2px;
  cursor: pointer;
  height: 3px;
  width: 100%;
}
.c-zoombar:active::-webkit-slider-thumb {
  height: 16px;
  top: -8px;
  width: 16px;
}
.c-zoombar::-webkit-slider-thumb:hover {
  height: 16px;
  top: -8px;
  width: 16px;
}
<div>
  <input type="range" value="0" class="c-zoombar" onInput="showValue(this.value)" />
</div>
<div>
  <span id="range">0</span>
</div>

然而,当我将拇指滚动到最大 right/left 时,拇指无法完全覆盖轨道,如下图所示。

我应该修改什么才能让拇指滚动到最大时能够覆盖轨道right/left?谢谢。

我发现 transform: scale() 可以完成部分技巧(而且比例转换比 width/height 更平滑)。 12px 大小是强制性的吗?

function showValue(value) {
  document.getElementById("range").innerHTML = value;
}
.c-zoombar {
  -webkit-appearance: none;
  background: none;
  outline: none;
  overflow: visible;
  width: 200px;
  height: 20px;
}
.c-zoombar::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: #5e6fd9;
  border: 1px solid #fff;
  border-radius: 50%;
  height: 12px;
  position: relative;
  top: -5.5px;
  transition: .2s;
  width: 12px;
  transform: scale(1.33);
}
.c-zoombar::-webkit-slider-runnable-track {
  background: transparent;
  border: 1px solid #000;
  border-radius: 2px;
  cursor: pointer;
  height: 3px;
  width: 100%;

}
.c-zoombar:active::-webkit-slider-thumb,
.c-zoombar::-webkit-slider-thumb:hover {
  transform: scale(1.66);
}
<div class='wrap'>
  <input type="range" value="0" class="c-zoombar" onInput="showValue(this.value)" />
</div>
<div>
  <span id="range">0</span>
</div>