getComputedStyle获取元素样式值

html:

复制代码
    <style>
      .div {
        width: 200px;
        height: 200px;
        background-color: greenyellow;
      }
    </style>
  </head>
  <body>
    <div class="div">一些文字</div>
    <script>
      const div = document.getElementsByClassName('div')[0]
      const style = getComputedStyle(div)
      console.log(style)
      console.log(style.backgroundColor) // rgb(173, 255, 47)
    </script>
  </body>
复制代码

vue:

  mounted() {
    const ref = this.$refs.h1Ref
    const style = getComputedStyle(ref)
    console.log(style)
    console.log(style.color)
    ref.classList.add('aa')
  }

 

注意:

  1、当div有padding值时,

    getComputedStyle获取的height会比offsetHeight小,小的那部分就是padding的值

    如果设置了box-sizing: border-box;  那此时getComputedStyle和offsetHeight的值一样

  2、offsetHight是数字,不带单位;getComputedStyle获取到的height是字符串,带单位

  3、getComputedStyle只能获取,ref可以获取也可以设置

  4、扩展:wrapper中有上下两个盒子,下面的盒子的高度需要依赖上面的盒子高度计算而来,一般有两种解决方式。一是通过设置第二个盒子动态高度,二是设置flex: 1

posted @   吴小明-  阅读(474)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
历史上的今天:
2020-09-24 windows实现应用双开
点击右上角即可分享
微信分享提示