This page tests the IntersectionObserver with a scrollable div as root.
Scroll the div below until it reaches the bottom.
jNote that, when you’ve scrolled all the way, the top edge of the test element has scrolled out of view under the top edge of the wrapping element. This fires an intersection observer, as it should.
The observer should fire when this element is 50 % and 100% within the wrapper div.
Now do the same here in Chrome. The only difference is that the wrapper now has a 10px padding, and as a result the top edge of the test element does not scroll out of view.
Firefox and Edge correctly do not fire an intersection observer, but Chrome does. Apparently it considers the padding-box, and not the border-box, the proper root element for this observer.
The observer should fire when this element is 50 % and 100% within the wrapper div.