菜鸟教程小白 发表于 2022-12-13 07:21:57

ios - 如何让 VoiceOver 确认里面有 SVG 的链接?


                                            <p><p>我有一个 anchor ,里面有一个 svg。在 iPhone 上使用 Voiceover,我无法通过点击链接来获得焦点。如果我用内联 <code><svg></code> 标记替换 <code><img></code> 标记,我可以。它在 OSX 上也能正常工作。</p>

<pre><code>&lt;a href=&#34;index.html&#34;&gt;&lt;img src=&#34;image/btn-arrow-left.svg&#34; alt=&#34;Logo&#34;/&gt;&lt;/a&gt;
</code></pre>

<p>我不希望在这里有内联 svg。这对我来说似乎是一个错误。但是有什么方法可以让 VoiceOver 承认这个链接吗?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我在 iOS 10.1.1 上遇到了类似的问题,在这种情况下,VoiceOver 会确认链接,但不会读取图像的 <code>alt</code> 文本:</p>

<pre><code>&lt;a href=&#34;index.html&#34;&gt;&lt;img src=&#34;image.svg&#34; alt=&#34;Logo&#34;&gt;&lt;/a&gt;
</code></pre>

<p>作为一个相关问题,VoiceOver 不会将 svg 作为其 <code>src</code> 的 <code><img></code> 确认,因此不会读取其 <code>alt</code> 文本。</p>

<hr/>

<p>我能够通过向 <code><img></code> 添加一个冗余的 <code>role="img"</code> 来解决这个问题:</p>

<pre><code>&lt;img src=&#34;image.svg&#34; alt=&#34;Logo&#34; role=&#34;img&#34;&gt;
</code></pre>

<hr/>

<p>从这些错误报告线程来看,这似乎仅在 svg 没有可访问内容时发生。</p>

<ul>
<li> <a href="https://bugs.webkit.org/show_bug.cgi?id=145263" rel="noreferrer noopener nofollow" title="Bug 145263 – AX: &lt;img&gt; elements with an SVG src are ignored by VO despite valid alt attribute">Bug 145263 – AX:elements with an SVG src are ignored by VO despite valid alt attribute</a> </li>
<li> <a href="https://bugs.webkit.org/show_bug.cgi?id=160705" rel="noreferrer noopener nofollow" title="Bug 160705 – AX: @alt and bounds ignored when using img points to an inaccessible SVG">Bug 160705 – AX: @alt and bounds ignored when using img points to an inaccessible SVG</a> </li>
</ul></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何让 VoiceOver 确认里面有 SVG 的链接?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/30399511/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/30399511/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何让 VoiceOver 确认里面有 SVG 的链接?