Bug 178515

Summary: How to reach full interoperability on default scrolling behavior for HTMLElement focus()
Product: WebKit Reporter: Simon Pieters (:zcorpan) <zcorpan>
Component: DOMAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: cdumez, jihyerish, simon.fraser, thorton
Priority: P2 Keywords: FromImplementor
Version: Safari Technology Preview   
Hardware: Unspecified   
OS: Unspecified   

Description Simon Pieters (:zcorpan) 2017-10-19 07:54:08 PDT
Context is: https://github.com/w3c/csswg-drafts/pull/1805#issuecomment-337801758

> Ask browser vendors to consider if they want to get full interoperability on default scrolling behavior for focus(), and if so what the behavior should be. I can file issues.

The current situation is summarized in https://github.com/w3c/csswg-drafts/pull/1805#issuecomment-331383688 and repeated below.

Chrome, Opera, Safari behave as follows.
Entirely in view: No scrolling
Partially in view: Scrolling (block: nearest, inline: nearest)
Entirely out of view: Scrolling (block: center, inline: center)

Firefox, Edge behave as follows.
Entirely in view: No scrolling
Partially in view: No scrolling
Entirely out of view: Scrolling (block: nearest, inline: nearest)

Getting agreement between browsers here would give us a stable foundation to extend the focus() API with scrollOptions (or something) that can explain the default scrolling behavior and allow customizing alignment etc. It also makes the web platform more predictable for developers.