質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.37%

background-image における「意味論的に重要な前景画像は、文書マークアップを通して提供されるべきである」とは?

受付中

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 1,517

score 17199

 CSS Backgrounds and Borders Module Level 3

作者は、背景画像を設定するときは,画像が可用でない状況下でもテキスト色とのコントラストは維持されるように, background-color も指定するべきである。
  アクセス容易性の理由から、作者は、重要な情報を供する際に,背景画像ばかりに頼るような手法をとるべきでない。 Web 内容をアクセスし易くするための指針 F3 [WCAG20] を見よ。 グラフィック的でない呈示の下では,画像はアクセスし得ず、また,高コントラスト表示モード下では,背景画像の表示が特別にオフにされることもある
  注記: CSS においては、 content プロパティにより,スタイル的な前景画像を提供し得る。 (意味論的に重要な前景画像は、文書マークアップを通して提供されるべきである — 例えば HTML の img タグなど。)

 Techniques for WCAG 2.0

注記: 背景画像の中に情報を組み込むことは、読みやすくする目的で背景を変えている人や、OS のハイコントラスト・モードの利用者に対しても問題を引き起こす。これらの利用者は、代替テキストが存在しないことで背景画像に含まれている情報を失うことになる。

 個人的な見解

私は次のように解釈しました。

  • 背景画像はオフにされることもある
  • 画像はオフにされることもある (背景画像に限らず、画像全体がオフにされることもある)
  • 背景画像がオフにされても文意が通るよう、意味論的に重要な前景画像を背景画像(background-image プロパティ)として指定すべきではない(SHOULD NOT)
  • 意味論的に重要な前景画像はHTMLで(マークアップを通して)提供すべきである(SHOULD)
  • 意味論的に重要な前景画像はオフにされてもいいように、代替テキストを指定すべきである(SHOULD)

文章中の「すべき」はRFC 2119に倣っています。

 質問

先述の通りですが、下記スレッドで見解の相違があり、質問に至りました。

皆さんはこの仕様をどのように解釈しますか。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

+1

背景画像で意味を表示させるのは止めた方が良いとは思います。
極端な話、ページ内容を全てフォトショで作って画像表示またはバックグラウンドに設定するっていうのと同じなので…
画像表示についてはaltやtitleを設定すると思いますが、アレは例えば視覚障害者でもネットが使えるようにするためのものでもあります。
PCが音声でaltの内容を読み上げてくれます。
なので本来、画像のaltとかには「alt = "01.jpg"」とかでは無く、「alt = "犬の散歩風景"」とか、音声で読み上げた時に連想し易い言葉を設定します。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/10/19 20:57

    同意します。
    alt属性の使い方については、HTML Standardで詳しく解説されていますね。
    https://momdo.github.io/html/images.html#alt

    キャンセル

+1

仕様の話であればいうことはありません。

しかし、この質問https://teratail.com/questions/95605
において、<img src="leader.jpg" alt="…">という回答では要件を満たさないでしょう。
背景やらボーダーやらで表現しても、それはやむなしかなと。ここで重要なベーコンが1枚であることが伝わればいいので

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/10/19 21:16

    > <img src="leader.jpg" alt="…">という回答では要件を満たさないでしょう。
    そうですね。仰る通り、質問の要件を満たせないと思います。
    CSS仕様通り、前景でマークアップする事を試みたとしても、前景を繰り返す命令がないので、要件を満たせません。
    画像を使用する事を試みた場合、「要件を妥協する」か「仕様を守る事を妥協する」かの二択を迫られます。
    どちらを採用するかはポリシー次第となりますが、そこで「画像を使わない手法」も考慮すると選択肢が増えます。
    また、「仕様では画像をオフにする可能性」に触れていますが、「JSをオフにする場合もある」「製作者スタイルシートをオフにする場合もある」とオン/オフの組み合わせを考えるとかなり増えます。
    ですので、多くの人はどこかで妥協しています。
    「今どきのブラウザはJavaScriptが実装されているので、JavaScriptが無効な環境は考慮しなくて良い」や「JavaScriptを無効に設定している人は全体の1%にも満たないので考慮しなくて良い」というように(私は考慮しますが、多くの人はJS-Offを考慮していない印象です)。
    実現性と厳格性のバランスまで持っていくと話が広がりすぎて収集が付かなくなる予感がしたので、ここでは実現性を考慮せず、「仕様の解釈」に焦点を当てて質問しています。
    「実際にどう実装すべきか」は各々のポリシーに依存するのでここでは触れません。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.37%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • トップ
  • CSSに関する質問
  • background-image における「意味論的に重要な前景画像は、文書マークアップを通して提供されるべきである」とは?