Currently it uses enclosingrect. (selfClipRect(), childrenClipRect(). see paintDirtyRect = selfClipRect(); at RenderLayer::paintLayerContents (when css overflow: scroll etc is present, it results in wrong cliprects) <div id='foo' style="overflow: scroll; display: none; border: 1px solid black; position: fixed; left: 10px; top: 10.3px; width: 20px; height: 20.1px;"></div>