美文网首页
如何获取计算后的DOM样式

如何获取计算后的DOM样式

作者: Zulu_c02a | 来源:发表于2020-02-22 16:57 被阅读0次

window.getComputedStyle()
行内样式(inline style)具有最高的优先级,改变行内样式,通常会立即反映出来。但是,网页元素最终的样式是综合各种规则计算出来的。因此,如果想得到元素现有的样式,只读取行内样式是不够的,我们需要得到浏览器最终计算出来的那个样式规则。
window.getComputedStyle方法,就用来返回这个规则。它接受一个DOM节点对象作为参数,返回一个包含该节点最终样式信息的对象。所谓“最终样式信息”,指的是各种CSS规则叠加后的结果。

var div = document.querySelector('div');
window.getComputedStyle(div).backgroundColor

getComputedStyle方法还可以接受第二个参数,表示指定节点的伪元素(比如:before、:after、:first-line、:first-letter等)。

var result = window.getComputedStyle(div, ':before');

注意:
1 返回的CSS值都是绝对单位,比如,长度都是像素单位(返回值包括px后缀),颜色是rgb(#, #, #)或rgba(#, #, #, #)格式。
2 CSS规则的简写形式无效,比如,想读取margin属性的值,不能直接读,只能读marginLeft、marginTop等属性。
3 如果一个元素不是绝对定位,top和left属性总是返回auto。
4 该方法返回的样式对象的cssText属性无效,返回undefined。
5 该方法返回的样式对象是只读的,如果想设置样式,应该使用元素节点的style属性。

相关文章

  • 事件相关

    如何批量操作 css 如何获取 DOM 计算后的样式 使用getComputedStyle获取元素计算后的样式 实...

  • 【Javascript】DOM操作&事件介绍

    写一个函数,批量操作 css 如何获取 DOM 计算后的样式 使用getComputedStyle方法获取 实现效...

  • 如何获取计算后的DOM样式

    window.getComputedStyle()行内样式(inline style)具有最高的优先级,改变行内样...

  • DOM、获取计算后样式

    一、DOM:(1)定义:Dom是W3C(万维网联盟)的标准, Document Object Model(文档对象...

  • 前端面试题之JavaScript(八)

    1.写一个函数,批量操作 css 2.如何获取 DOM 计算后的样式 window.getComputedSele...

  • DOM操作&事件操作

    1.写一个函数,批量操作 css 2.如何获取 DOM 计算后的样式 window.getComputedStyl...

  • DOM&事件 实战

    题目1: 写一个函数,批量操作 css 题目2: 如何获取 DOM 计算后的样式 使用getComputedSty...

  • JS DOM操作(2) 事件(1)

    1、写一个函数,批量操作 css 2、如何获取 DOM 计算后的样式 设置div的background为pink ...

  • DOM操作

    1、 写一个函数,批量操作 css 2、如何获取 DOM 计算后的样式 可以使用document.defaultV...

  • 属性操作和事件

    题目1: 写一个函数,批量操作 css 题目2: 如何获取 DOM 计算后的样式 题目3 : 实现以下效果 效果预...

网友评论

      本文标题:如何获取计算后的DOM样式

      本文链接:https://www.haomeiwen.com/subject/gsnlqhtx.html