<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>163658</bug_id>
          
          <creation_ts>2016-10-19 03:05:03 -0700</creation_ts>
          <short_desc>AX: link to container with fragment identifier that has tabindex results in container not being read and ignored by VoiceOver</short_desc>
          <delta_ts>2022-02-08 23:09:53 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</component>
          <version>Safari 10</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 10</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>159753</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Patrick H. Lauke">redux</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>jcraig</cc>
    
    <cc>keeganstreet</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>webkit</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1241884</commentid>
    <comment_count>0</comment_count>
      <attachid>292058</attachid>
    <who name="Patrick H. Lauke">redux</who>
    <bug_when>2016-10-19 03:05:03 -0700</bug_when>
    <thetext>Created attachment 292058
Test case

Due to focus management issues in some browsers, one common approach for skip links is to link to a container with an id that also has an explicit tabindex attribute, making it focusable.

&lt;a href=&quot;#content&quot;&gt;Skip to main content&lt;/a&gt;
...
&lt;div id=&quot;content&quot; tabindex=&quot;-1&quot;&gt;...&lt;/div&gt;

However, it seems that this sort of (fairly common) skip link pattern breaks in iOS10/VoiceOver/Safari. Specifically, it seems that if the target container has a tabindex attribute, VoiceOver does move the accessibility focus to the container, but announces nothing. But more worryingly, it then seems to ignore that entire target container - swiping left/right simply jumps over that container as if it wasn&apos;t in the document at all (though if you swipe long enough to get into the Safari UI and back, it seems to usually sort itself out again).

This is making fairly common skip links (for instance, those used in Bootstrap-based sites, if they follow the advice given in the BS documentation) completely unusable.

See attached test case and the video at https://www.youtube.com/watch?v=JUlSav9Nm_4 (the first skip link works, but the other two skip links - to a &lt;div id=&quot;...&quot; tabindex=&quot;0&quot;&gt; and &lt;div id=&quot;...&quot; tabindex=&quot;-1&quot;&gt; - exhibit this broken behavior)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1241885</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2016-10-19 03:05:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/28844157&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1241890</commentid>
    <comment_count>2</comment_count>
    <who name="Patrick H. Lauke">redux</who>
    <bug_when>2016-10-19 05:18:03 -0700</bug_when>
    <thetext>Possibly worth noting: the reason why authors do set explicit tabindex is, among other things, this https://bugs.webkit.org/show_bug.cgi?id=116046 (to force keyboard interaction with skip links to work correctly)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1241915</commentid>
    <comment_count>3</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2016-10-19 08:27:19 -0700</bug_when>
    <thetext>Relating bug 158430</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1324162</commentid>
    <comment_count>4</comment_count>
    <who name="Keegan">keeganstreet</who>
    <bug_when>2017-06-29 17:01:31 -0700</bug_when>
    <thetext>I am finding that even if the target does not have a tabindex attribute, VoiceOver highlights the target but does not read it, and then it ignores the target container completely.

Test case: https://codepen.io/keeganstreet/pen/VWyGyv</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1839026</commentid>
    <comment_count>5</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2022-02-08 23:09:53 -0800</bug_when>
    <thetext>This is actually being tracked under:
&lt;rdar://39953581&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>292058</attachid>
            <date>2016-10-19 03:05:03 -0700</date>
            <delta_ts>2016-10-19 03:05:03 -0700</delta_ts>
            <desc>Test case</desc>
            <filename>skipnavtest.html</filename>
            <type>text/html</type>
            <size>5657</size>
            <attacher name="Patrick H. Lauke">redux</attacher>
            
              <data encoding="base64">DQo8IURPQ1RZUEUgaHRtbD4NCjxodG1sIGxhbmc9ImVuIj4NCjxoZWFkPg0KCTxtZXRhIGNoYXJz
ZXQ9InV0Zi04Ij4NCgk8dGl0bGU+U2tpcCBOYXZpZ2F0aW9uIFRlc3QgKG1vZGlmaWVkKTwvdGl0
bGU+DQo8L2hlYWQ+DQo8Ym9keT4NCjxkaXYgaWQ9InNraXByb3cxIj4NCgk8YSBocmVmPSIjdGFy
Z2V0MSI+U2tpcCB0byB0YXJnZXQgMTwvYT4NCgk8YSBocmVmPSIjdGFyZ2V0MiI+U2tpcCB0byB0
YXJnZXQgMjwvYT4NCgk8YSBocmVmPSIjdGFyZ2V0MyI+U2tpcCB0byB0YXJnZXQgMzwvYT4NCjwv
ZGl2Pg0KDQo8aDE+U2tpcCBOYXZpZ2F0aW9uIFRlc3Q8L2gxPg0KPHA+UmVkdWNlZCB0ZXN0IGNh
c2UgYmFzZWQgb24gPGEgaHJlZj0iaHR0cDovL3RlcnJpbGx0aG9tcHNvbi5jb20vdGVzdHMvc2tp
cHRlc3QuaHRtbCI+VGVycmlsbCBUaG9tcHNvbidzIFNraXAgTmF2aWdhdGlvbiBUZXN0PC9hPi48
L3A+DQoNCjxwPkZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcu
IEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBj
b250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRv
IGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNv
bWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJs
ZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxp
bmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxl
ciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50
IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNl
IHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlz
aWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3Jv
bGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZp
bGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250
ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZv
cmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUg
dmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBz
Y3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcu
IEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBj
b250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRv
IGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNv
bWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJs
ZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxp
bmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxl
ciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50
IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNl
IHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlz
aWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3Jv
bGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZp
bGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250
ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZv
cmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUg
dmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBz
Y3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcu
IEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBj
b250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRv
IGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNv
bWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJs
ZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxp
bmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxl
ciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50
IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNl
IHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlz
aWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3Jv
bGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZp
bGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250
ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZv
cmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUg
dmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBz
Y3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcu
IEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBj
b250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRv
IGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNv
bWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJs
ZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxp
bmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxl
ciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50
IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNl
IHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlz
aWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3Jv
bGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZp
bGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250
ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZv
cmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUg
dmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBz
Y3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcu
IEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBj
b250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRv
IGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNv
bWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJs
ZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxp
bmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxl
ciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50
IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNl
IHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlz
aWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3Jv
bGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZp
bGxlciBjb250ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250
ZW50IHRvIGZvcmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIEZpbGxlciBjb250ZW50IHRvIGZv
cmNlIHNvbWUgdmlzaWJsZSBzY3JvbGxpbmcuIDwvcD4NCg0KPGRpdiBpZD0idGFyZ2V0MSI+DQoJ
PGgyPlRhcmdldCA8L2gyPg0KCTxwPlRoaXMgdGFyZ2V0IGhhcyBhbiA8Y29kZT5pZDw8L2NvZGU+
IGF0dHJpYnV0ZSBvbiBhIDxjb2RlPmRpdjwvY29kZT4gdGhhdCBjb250YWlucyBib3RoIHRoZSBo
ZWFkaW5nIGFuZCB0aGlzIHBhcmFncmFwaC4gPGEgaHJlZj0iIyI+RHVtbXkgbGluazwvYT4uPC9w
Pg0KPC9kaXY+DQoNCjxkaXYgaWQ9InRhcmdldDIiIHRhYmluZGV4PSIwIj4NCgk8aDI+VGFyZ2V0
IDwvaDI+DQoJPHA+VGhpcyB0YXJnZXQgaGFzIGFuIDxjb2RlPmlkPDwvY29kZT4gYXR0cmlidXRl
IGFuZCA8Y29kZT50YWJpbmRleD0iMCI8L2NvZGU+IG9uIGEgPGNvZGU+ZGl2PC9jb2RlPiB0aGF0
IGNvbnRhaW5zIGJvdGggdGhlIGhlYWRpbmcgYW5kIHRoaXMgcGFyYWdyYXBoLiA8YSBocmVmPSIj
Ij5EdW1teSBsaW5rPC9hPi48L3A+DQo8L2Rpdj4NCg0KPGRpdiBpZD0idGFyZ2V0MyIgdGFiaW5k
ZXg9Ii0xIj4NCgk8aDI+VGFyZ2V0IDwvaDI+DQoJPHA+VGhpcyB0YXJnZXQgaGFzIGFuIDxjb2Rl
PmlkPDwvY29kZT4gYXR0cmlidXRlIGFuZCA8Y29kZT50YWJpbmRleD0iLTEiPC9jb2RlPiBvbiBh
IDxjb2RlPmRpdjwvY29kZT4gdGhhdCBjb250YWlucyBib3RoIHRoZSBoZWFkaW5nIGFuZCB0aGlz
IHBhcmFncmFwaC4gPGEgaHJlZj0iIyI+RHVtbXkgbGluazwvYT4uPC9wPg0KPC9kaXY+DQoNCjwv
Ym9keT4NCjwvaHRtbD4=
</data>

          </attachment>
      

    </bug>

</bugzilla>