當display=none時,元素和子元素高度爲0的解決辦法

在前端中爲了某種須要,咱們須要獲取display=none的元素或者子元素的實際高度來進行某些處理,然而html對display=none的元素和子元素是不進行渲染的,若是咱們沒有規定這些元素的高度那麼它們的高度都會是0,就算元素中有文字或者其它內容。html

解決辦法:
經過jquery的show方法先展現出來,再在回調函數中獲取它們的高度並操做便可,代碼以下:
$(".box").show(0,function(){
  var h = $(".box").outerHeight();
  console.log(h);
})

這樣咱們就能夠獲取到box的實際高度了。前端

相關文章