在vue2.0里,如何获取dom元素的样式(样式是动态变化的)

请问一下:我想获取一个元素的高度应该怎么获取?元素的高度是动态变化的。在mounted和updated里获取的都是空值
Vue.nextTick也无法获取到

clipboard.png

阅读 46.5k
2 个回答

这个元素本来就没有样式吧?
下面这段代码是可以获取到样式的:

<template>
  <div style="display: block;" ref="abc">
    <!-- ... -->
  </div>
</template>

<script>
export default {
  mounted () {
    console.log(this.$refs.abc.style.cssText)
  }
}
</script>

输出结果是 display: block;

试试 this.$refs.abc.getBoundingClientRect().height

this.$refs.name.offsetWidth  
this.$refs.name.offsetHeight
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏