[Webkit-unassigned] [Bug 175737] New: AX: Scroll position jumps when reading non-interactive content with VoiceOver

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Aug 18 15:23:09 PDT 2017


https://bugs.webkit.org/show_bug.cgi?id=175737

            Bug ID: 175737
           Summary: AX: Scroll position jumps when reading non-interactive
                    content with VoiceOver
           Product: WebKit
           Version: Safari 10
          Hardware: iPhone / iPad
                OS: iOS 10.3
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Accessibility
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: alexlande at gmail.com
                CC: webkit-bug-importer at group.apple.com

Created attachment 318550

  --> https://bugs.webkit.org/attachment.cgi?id=318550&action=review

HTML file to demonstrate issue

On iOS, VoiceOver causes the screen to jump to the top of the page when reading certain page content. This happens most often when reading non-interactive and non-heading elements like `<p>` tags. This occurs when
the content is inside of a container with `tabindex='-1'` and the page is
taller than the screen height of the device.

The bug occurs to a limited extent whenever the tabindex is present, but only
happens with certain elements near the bottom of the page. If the page includes a `height: 100%` style declaration on `html`, `body`, and the containing element, the bug occurs for all `<p>` tags that don't fit on the screen initially.

I've attached an HTML file to reproduce the bug, it's also available on JSBin: http://output.jsbin.com/viyibe


Steps to Reproduce:

1. Open the attached page on an iOS device and open VoiceOver.
2. Swipe right repeatedly to read through page content until you get past the content that fits on the screen initially.


Actual Results:

When VoiceOver reads `<p>` elements after the first few, the browser will visually jump to the top of the page.


Expected Results:

Each `<p>` element read by VoiceOver should be on screen when it is read, and the browser should not jump to the top of the page.


Additional Information:

To see the expected behavior, you can remove the `tabindex='-1'` from the containing `<div>`. To see a limited form of the bug which only applies on the last 1-2 `<p>` elements on the page, you can remove the line of CSS setting `height: 100%` on the containing elements (while leaving the `tabindex` in place).

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20170818/4fea9d64/attachment.html>


More information about the webkit-unassigned mailing list