JavaScript clientHeight

admin發表於2018-09-03

clientHeight 屬性返回指定元素客戶區高度,返回值是一個數字,單位以畫素計。

客戶區高度 = height 屬性值 + padding-top + padding-bottom。

clientHeight 只讀屬性,不能進行賦值操作。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
dom.clientHeight

圖示如下:

a:3:{s:3:\"pic\";s:43:\"portal/201809/03/094058o5z1c2zja165khw2.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

clientHeight 返回的就是圖中白色區域的高度。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style type="text/css">
#ant{
  width:200px;
  height:100px;
  line-height:100px;
  background:red;
  border:10px solid green;
  padding:20px;
  text-align:center;
}
</style>
<script>
window.onload=function(){
  odiv=document.getElementById("ant");
  odiv.innerHTML=odiv.clientHeight;
}
</script>
</head>
<body>
<div id="ant"></div>
</body>
</html>

上述程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/202003/25/005012qbdd77vvx2ntno02.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

程式碼簡單分析如下:

(1).計算出 clientHeight 屬性值為 70,並將其寫入div 中。

(2).70 = height(30)+ padding-top(20)+ padding-bottom(20)。

特別說明:此屬性返回的是一個數字,單位預設以畫素計。

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="https://www.softwhy.com/" />
<title>螞蟻部落</title>
<style>
#ant {
  width :200px;
  height :80px;
  border :10px solid #ccc;
  padding :20px;
  text-align :center;
  overflow :auto
}
#inner {
  height :50px;
  width :300px;
  background-color :green;
}

</style>
<script>
window.onload = ()=> {
  let oDiv = document.getElementById("ant");
  console.log(oDiv.clientHeight);
}
</script>
</head>
<body>
<div id="ant">
  <div id="inner"></div>
</div>
</body>
</html>

上述程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/202003/25/010031uexqmm2q2p8m88w7.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

對上述程式碼分析如下:

(1).元素的子元素較寬,導致底部出現橫向滾動條。

(2).滾動條在垂直方位上必然有一個高度,當前谷歌瀏覽器中值為17px,此值不在 clientHeight 之中。

(3). height (80)+ padding-top(20) + padding+bottom(20) - 滾動條高度(17) = 103。

控制檯列印效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/202003/25/010601rbzrfvzi030bylyr.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

特別說明:其他瀏覽器滾動條高度值未必是 17px ,感興趣的朋友可以自行計算,本文不做介紹。

相關文章