<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - AX: VoiceOver/Safari does not scroll viewport when &lt;fieldset&gt; inside overflow-x:hidden container, off-screen focused controls inoperable"
   href="https://bugs.webkit.org/show_bug.cgi?id=147700">147700</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>AX: VoiceOver/Safari does not scroll viewport when &lt;fieldset&gt; inside overflow-x:hidden container, off-screen focused controls inoperable
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>WebKit
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>528+ (Nightly build)
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>iOS 8.2
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P2
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Accessibility
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>webkit-unassigned&#64;lists.webkit.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>redux&#64;splintered.co.uk
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>webkit-bug-importer&#64;group.apple.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>(Issue is actually for iOS8.4, but the bug reporting form does not give me that version as an option)

First noticed the issue in a jQuery Mobile site, but managed to boil the problem down to the following specific situation...

Steps to reproduce:

- take a page that has a container (say, a &lt;div&gt;) with overflow-x:hidden (as most jQuery Mobile containers seem to have); inside that container, a &lt;fieldset&gt; with a sizeable amount of content (for instance, a long list of checkboxes, radio buttons, etc)
- with VoiceOver, navigate through the form controls
- once VO focus reaches the bottom of the visible viewport, the viewport does not scroll further, although VO announces/focuses on the form controls that are now off-screen
- attempting to interact with the off-screen focused controls does not work either (e.g. checkboxes, even when double-tapped, don't get checked)
- in addition, if the VO focus is roughly behind Safari's controls at the bottom of the screen, double-tapping sometimes triggers the back/next/share buttons of the browser itself.

Expected behavior:

- the viewport should scroll to follow VO focus, controls should be operable

(interestingly, changing the &lt;fieldset&gt; to another element, like a &lt;div&gt;, or removing the overflow-x:hidden from the main container, eliminates the problem...so this appears to be very specific to this combination - possibly some special handling of &lt;fieldset&gt;?)</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>