Re: [whatwg] scrollIntoView jarring?

On Wed, Apr 30, 2008 at 10:58 AM, David Bolter <>

> Specifically I would ask that:
> 1. scrollIntoView not do anything in the case that the element is already
> fully visible (possibly in the middle of the viewport), or
> 2. ensureElementIsVisible to be added as described by Daniel Glazman (

I agree that this is a use case which scrollIntoView does not seem to solve
well.  I am not sure Daniel's proposal for ensureElementIsVisible is perfect
either, though it is clearly better.

I make no formal proposal, but the behavior I would typically want for some
kind of a call (perhaps in addition to those above, I don't know) would be:

   - If the element in question cannot be scrolled so as to make more of it
   appear in the viewport, do nothing.  (For when the element is completely
   visible, or is larger than the viewport and already taking up the whole
   - Otherwise, if the element is not larger than the viewport, scroll such
   that the element is centered* in the viewport (within the scrolling limits
   -- if the element is at the bottom of the page, it clearly can't be scrolled
   up to the middle of the viewport).
   - Otherwise, scroll the element such that the top of the element is
   aligned with the top of the viewport.

*Perhaps centered is the wrong choice.  Another suggestion would be to
scroll to a point 1/3 of the way from the top or bottom of the viewport,
nearer to whichever edge the element scrolled in from.  Also, perhaps the
UA's behavior should not be specified in this kind of detail?


Received on Wednesday, 30 April 2008 20:19:04 UTC