首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

getComputedStyle与currentStyle

本文参考https://developer.mozilla.org/en-US/docs/Web/API/Window.getComputedStyle 1.简介 getComputedStyle...csdn博客这个页面举例来说,我们注意一下document.body的background样式,如下图 body的内联样式为空,但在内部样式表中设置了background样式,在控制台下用分别用style和getComputedStyle...getComputedStyle的浏览器都可以调用document.defaultView.getComputedStyle()。...所有版本的IE以及Opera的getComputedStyle方法都不支持伪类。 手机浏览器 手机浏览器对getComputedStyle方法基本都支持。...和element.currentStyle主要存在以下区别: a.前者在很多浏览器上(except IE)都支持伪类,currentStyle完全不支持伪类; b.前者使用getPropertyValue

2.3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    getBoundingClientRect使用指南

    主要介绍getBoundingClientRect的基本属性,以及具体的使用场景和一些需要注意的问题。...getBoundingClientRect Element.getBoundingClientRect() 含义: 方法返回元素的大小及其相对于视口的位置。...当计算边界矩形时,会考虑视口区域(或其他可滚动元素)内的滚动操作,也就是说,当滚动位置发生了改变,top和left属性值就会随之立即发生变化(因此,它们的值是相对于视口的,而不是绝对的)。...如果你需要获得相对于整个网页左上角定位的属性值,那么只要给top、left属性值加上当前的滚动位置(通过window.scrollX和window.scrollY),这样就可以获取与当前的滚动位置无关的值...如图所示: 当页面的元素在浏览器的左上角时,得到的top和left值为负值,right和bottom值为正值。

    1.5K40

    5 个 JavaScript “罕见”原生的 API

    闲言少叙,开冲~~ window.getComputedStyle() window.getComputedStyle()方法返回一个 CSSStyleDeclaration 对象,与 style 属性的类型相同...,其中包含元素的计算样式; 用法如下: document.defaultView.getComputedStyle(element, [pseudo-element]) // or window.getComputedStyle...) getBoundingClientRect() 该Element.getBoundingClientRect()方法返回一个 DOMRect 对象,该对象提供元素大小及其相对于视口的位置信息...; 用法如下: domRect = element.getBoundingClientRect(); 返回元素的 left, top, right, bottom, x, y, width, and height...值; 比如说要获得 DOM 元素相对于网页左上角的定位距离 top 和 left 的值: const h3 = document.querySelector("h3"); const rect =

    42020

    前端项目遇到的问题(一)

    、getBoundingClientRect、getClientRects在 JavaScript 中,getComputedStyle、getBoundingClientRect 和 getClientRects... 是用于获取元素宽高及位置信息的方法,以下是对它们的介绍:1.getComputedStyle():这个方法可以获取指定元素的最终计算后的 CSS 样式。...2.getBoundingClientRect():返回一个 DOMRect 对象,包含元素的位置和大小信息。可以直接获取元素的宽度和高度,以及相对于视口的位置信息。...getComputedStyle 更适用于获取 CSS 样式属性,getBoundingClientRect 通常用于获取元素相对于视口的位置和大小,而 getClientRects 可以用于处理具有多个边框矩形的元素...除了 getComputedStyle()和 getBoundingClientRect()方法,还有哪些方法可以获取元素的宽高?

    10010

    Resize Observer 介绍及原理浅析

    当 「resize」 事件发生后,我们往往需要通过调用 getBoundingClientRect 或者 getComputedStyle 来获取此时我们关心的元素大小,以此判断元素是否发生了变化。...频繁调用 getBoundingClientRect 、 getComputedStyle等 API 会导致 「浏览器重排(reflow)」,导致页面性能变差,举个例子:https://codesandbox.io...调用 getBoundingClientRect 等函数时,浏览器为了保证我们拿到的元素参数是准确的,会触发一次 reflow 来重新布局。...通知内容包括什么 通知的内容包含了足够的信息,以便开发者能够根据当前元素的具体大小信息来作出变化,而不是要开发者重新调用 getComputedStyle、 getBoundingClientRect...需要注意的是,内部获取元素的大小是通过调用 getComputedStyle 实现的,那么多次调用 getComputedStyle 会不会导致浏览器频繁 layout/reflow ?

    3.6K40

    FLIP,一种高端优雅但简单易用的前端动画思维

    First 表示元素初始时的具体信息,在 html 环境中,这个事情是比较容易就能做到的,我们可以利用 getBoundingClientRect 或者 getComputedStyle 来拿到元素的初始信息...() item.startX = rect.left item.startY = rect.top item.bgColor = getComputedStyle(item)['...() const currentX = rect.left const currentY = rect.top const bgColor = getComputedStyle(...因此大家可能对于高级感和优雅感的体会不是那么深刻。 第三个案例则以在实践中,在前端很少有项目能够做到的共享元素动画,来为大家介绍这种动画思想方案的厉害之处。...也就是说,我们只需要把这里的两个点击事件,结合路由事件和参数传递,就能做到跟小红书一样的共享元素路由转场效果。 不过至于如何封装让代码更加简洁,本文就不再扩展啦,交给大家自己思考。

    84111

    浏览器的回流与重绘 (Reflow & Repaint)

    offsetTop、offsetLeft crollWidth、scrollHeight、scrollTop、scrollLeft scrollIntoView()、scrollIntoViewIfNeeded() getComputedStyle...() getBoundingClientRect() scrollTo() 重绘 (Repaint) 当页面中元素样式的改变并不影响它在文档流中的位置时(例如:color、background-color...现代浏览器会对频繁的回流或重绘操作进行优化: 浏览器会维护一个队列,把所有引起回流和重绘的操作放入队列中,如果队列中的任务数量或者时间间隔达到一个阈值的,浏览器就会将队列清空,进行一次批处理,这样可以把多次回流和重绘变成一次...offsetWidth、offsetHeight、offsetTop、offsetLeft scrollWidth、scrollHeight、scrollTop、scrollLeft width、height getComputedStyle...() getBoundingClientRect() 因为队列中可能会有影响到这些属性或方法返回值的操作,即使你希望获取的信息与队列中操作引发的改变无关,浏览器也会强行清空队列,确保你拿到的值是最精确的

    68920
    领券