<svg> imgロールを持つ要素には代替テキストが必要です

ルールID: svg-img-alt
ルールセット: axe-core 4.10
ユーザーへの影響: 深刻
ガイドライン: WCAG 2.1 (A), WCAG 2.0 (A), WCAG 2.2 (A), Section 508, Trusted Tester, EN 301 549

Start building more accessible experiences

Axe DevTools Pro helps development teams find and fix up to 80% of accessibility issues while coding. No experience required. Get started with your free trial today.

Compliance Data & Impact

User Impact

Disabilities Affected

  • 視覚障害
  • 視聴覚障害
  • 運動障害

Standard(s)

  • WCAG 2.1 (A)
  • WCAG 2.0 (A)
  • WCAG 2.2 (A)
  • Section 508
  • Trusted Tester
  • EN 301 549

WCAG 達成基準 [WCAG 2.1 (A)]

  • 1.1.1: Non-text Content

WCAG 達成基準 [WCAG 2.0 (A)]

  • 1.1.1: Non-text Content

WCAG 達成基準 [WCAG 2.2 (A)]

  • 1.1.1: Non-text Content

Section 508 ガイドライン

  • 1194.22: Web based intranet and Internet Information & Applications
  • 1194.22 (a): A text equivalent for every non-text element shall be provided (e.g., via "alt", "longdesc", or in element content)

Trusted Tester ガイドライン

  • 7.A: The accessible name and accessible description for a meaningful image provides an equivalent description of the image.

    修正方法

    以下の方法の1つまたは組み合わせを使用して、HTMLにマークアップとして追加されるすべてのSVG要素にアクセス可能な名前が付けられていることを確認します。

    <title> 属性の使用

    例:

      
        <svg role="img" title="A brown circle">
          <circle
            cx="30"
            cy="30"
            r="10"
            fill="brown"
          ></circle>
        </svg>
      
    

    SVG <title> 要素の使用

    <title> 要素は、SVGのコンテナ要素やグラフィック要素のアクセス可能な短いテキストの説明を提供します。

    例:

      
        <svg role="img">
          <title>A descriptive title for the SVG element</title>
          <path d="...." />
        </svg>
      
    

    `aria-label` 属性の使用

    例:

      
        <svg xmlns="https://www.w3.org/2000/svg">
        <circle role="img" cx="50" cy="50" r="40" stroke="black" fill="red"  aria-label="A red circle with black border">
        </circle>
        </svg>
      
    

    `aria-labelledby` 属性の使用

    例:

      
        <div id="first">First</div>
        <div id="name">Name</div>
        <svg role="img"  aria-labelledby="first name">
          <path d="...." />
        </svg>
      
    

    なぜ重要なのか

    成功基準1.1.1 の目的は、代替テキストを使用することで、非テキストコンテンツ (SVG画像を含む) によって伝えられる情報をアクセス可能にすることです。代替テキストは、ユーザーのニーズに合わせてあらゆる感覚様式 (視覚、聴覚、触覚など) を通じてレンダリングできるため、情報をアクセス可能にする主な方法です。代替テキストを提供することで、さまざまなユーザーエージェントがさまざまな方法で情報をレンダリングできるようになります。たとえば、画像を見ることができない人のために、合成音声を使用して代替テキストを読み上げることができます。音声ファイルを聞くことができない人のために、代替テキストを表示して読むことができます。将来、テキストの代替案は情報を手話や同じ言語のより簡単な形にも容易に翻訳できるようになります。

    ルールの説明

    <img>、graphics-document、またはgraphics-symbolロールを持つSVG要素に、アクセス可能な代替テキストがあることを確認します。

    仕組みについて (簡単に言うと)

    このルールのアルゴリズムは次を返します:

    • 要素にコードの子要素がある場合は True <title>

      <svg id="target"><title>Time II: Party</title></svg>
    • 子要素に別の要素にネストされたテキストがある場合は True <title>

      <svg id="target"><title><g>Time II: Party</g></title></svg>
    • 要素に子要素がない場合は False <title>

      <svg id="target"></svg>
    • False 場合は子が空の場合はFalse。 <title>

      <svg id="target"><title></title></svg>
    • False 場合は孫の場合はfalse。 <title>

      <svg id="target"><circle><title>Time II: Party</title></circle></svg>
    • False 場合は子要素に空白のみが含まれる場合はfalse。 <title>

      <svg id="target"><title> \t\r\n </title></svg>
    • False 場合はタイトルが複数あり、最初のタイトルが空の場合はFalse。

      <svg id="target"><title></title><title>Time II: Party</title></svg>

    リソース

    axe 4.10 ルールの一覧 を参照する

    この情報は役に立ちましたか?

    すでにフィードバックをいただきました、ありがとうございます。.

    あなたの回答は次のとおりです。

    この情報は役に立ちましたか?
    フィードバックが提出された日付/時刻: