Performance 浏览器回流还是不回流?

Performance 浏览器回流还是不回流?,performance,rendering,google-chrome-devtools,reflow,Performance,Rendering,Google Chrome Devtools,Reflow,我的问题很简单 当我尝试获取元素的偏移位置时,为什么我可以在chrome devtool时间线上看到任何回流? 我刚刚读过这个=> 斜视,斜视,斜视,斜视, 滚动顶部/左侧/宽度/高度,客户端顶部/左侧/宽度/高度, getComputedStyle()或IE中的currentStyle 以上所有这些基本上都是请求有关 一个节点,任何时候你这样做,浏览器必须给你最大的帮助 最新值。为此,它需要应用所有计划的 更改、刷新队列、咬紧牙关并进行回流 因此,我打开了我的chrome devtool ti

我的问题很简单

当我尝试获取元素的偏移位置时,为什么我可以在chrome devtool时间线上看到任何回流?

我刚刚读过这个=>

斜视,斜视,斜视,斜视, 滚动顶部/左侧/宽度/高度,客户端顶部/左侧/宽度/高度, getComputedStyle()或IE中的currentStyle

以上所有这些基本上都是请求有关 一个节点,任何时候你这样做,浏览器必须给你最大的帮助 最新值。为此,它需要应用所有计划的 更改、刷新队列、咬紧牙关并进行回流

因此,我打开了我的chrome devtool timeline,但在尝试以下操作时,我没有看到任何重新计算样式(紫色的东西):

element.offsetHeight;
查看某些渲染的唯一方法是更改元素的样式:

element.style.left = element.offsetLeft + 10 + "px";
我希望每次尝试获取窗口的滚动顶部时都能看到回流,但没有:/

$(window).scrollTop();
多亏了克里斯托夫,我(也许)找到了答案

好的,如果我理解了:

offsetHeight将刷新渲染队列,如果样式信息未被修改(对于他和他的父母),则浏览器已具有该信息,并且不会进行回流:)

这就是为什么我们没有看到任何回流:)