ScrollWidth与具有right-align属性的输入中的ClientWidth不同

时间:2019-05-29 11:36:08

标签: html css google-chrome browser

我有一个输入元素,其属性为text-align: right。当输入为空时,scrollWidth等于clientWidth,这是正确的情况,但是当我在其中纠正单个字符时,即使还没有滚动器,scrollWidth也会比clientWidth多一个。应该相等。

<html>
<head>
<style>
#content {
  height: 80px;
  width: 20px;
  padding: 0px;
  background-color: coral;
  text-align: right
}
</style>
</head>
<body>

<p>Click the button to get the entire height (vertically) and width (horizontally) of the div element with id="content".</p>

<button onclick="myFunction()">Try it</button>


  <input id="content">Some content..</input>


<p id="demo"></p>

<script>
function myFunction() {
  var elmnt = document.getElementById("content");
  var y = elmnt.scrollHeight;
  var x = elmnt.scrollWidth;
  var z = elmnt.clientWidth;
  document.getElementById ("demo").innerHTML = "ScrollHeight: " + y + "px<br>ScrollWidth: " + x + "px<br>clientWidth: " + z + "px";
}
</script>

</body>
</html>

尝试在上面的输入中添加一个字符,您将看到scrollWidth即将到21和clientWidth即将到20。理想情况下,它们都应具有值20,直到没有滚动器为止。

0 个答案:

没有答案