【アクセシビリティ】　皆さんはAlt属性を適切に使えますか？

こんにちは
新卒1年目の小川です。
ご覧いただきありがとうございます！

今回の記事では、Alt属性についてまとめていきたいと思います。

# こんな人に読んでほしい！

* アクセシビリティに興味や関心がある方
* 開発をしているエンジニアの方

# 目次

1. [Alt属性とは何か](#alt属性とは何か)
2. [スクリーンリーダーとは？](#スクリーンリーダーとは)
3. [Alt属性の効果やメリットとは？](#alt属性の効果やメリットとは)
   - [アクセシビリティの向上](#アクセシビリティの向上)
   - [検索エンジン最適化 (SEO) に有利](#検索エンジン最適化-seo-に有利)
   - [画像が表示されない場合のフォールバック](#画像が表示されない場合のフォールバック)
4. [Alt属性がないと何が困るのか](#alt属性がないと何が困るのか)
   - [アクセシビリティの低下](#アクセシビリティの低下)
   - [検索エンジンの評価が低下](#検索エンジンの評価が低下)
   - [ユーザーエクスペリエンスの低下](#ユーザーエクスペリエンスの低下)
5. [適切なAlt属性の記述方法とは](#適切なalt属性の記述方法とは)
   - [簡潔かつ明確な説明](#簡潔かつ明確な説明)
   - [コンテキストに合わせた説明](#コンテキストに合わせた説明)
   - [装飾用画像には空のAlt属性を設定](#装飾用画像には空のalt属性を設定)
6. [適切な記述ができているかの確認方法](#適切な記述ができているかの確認方法)
   - [ブラウザの開発者ツールを使用する](#ブラウザの開発者ツールを使用する)
   - [スクリーンリーダーを使用して確認する](#スクリーンリーダーを使用して確認する)
   - [オンラインツールを活用する](#オンラインツールを活用する)
7. [最後に](#最後に)


# Alt属性とは何か

Alt属性とは、HTMLの`<img>`タグ内で画像の代替テキストを指定するための属性です。具体的には、画像が何を表しているかをテキストで説明するためのものであり、視覚に障害があるユーザーがスクリーンリーダーを使用してウェブページを閲覧する際や、画像が読み込まれない場合にその内容を伝える役割を果たします。

```html
<img src="example.jpg" alt="サンプル画像の説明文">
```

このように記述することで、画像が表示できない状況でも、その意味をユーザーに伝えることが可能となります。


# スクリーンリーダーとは？
スクリーンリーダーという言葉を初めて耳にする方もいるかもしれません。
スクリーンリーダーとは、「音声読み上げソフト」のことをいい、複数の種類があります。
以下で簡単に紹介します。

* MacやiPhoneの場合
    * Voice Over
* Windowsの場合
    * PC-Talker
    * NVDA
    * ナレーター

PC-Talkerは購入が必要ですが、それ以外のものは無料で使用することができるので、興味がある方がいれば、ぜひ一度使ってみてください！


# Alt属性の効果やメリットとは？

Alt属性には以下のような効果やメリットがあります。

## アクセシビリティの向上

Alt属性を適切に設定することで、視覚に障害があるユーザーがスクリーンリーダーを利用してウェブサイトを閲覧する際に、画像の内容を理解することができます。これにより、ウェブサイトのアクセシビリティが向上し、より多くのユーザーにとって利用しやすいサイトになります。

## 検索エンジン最適化 (SEO) に有利

検索エンジンは画像そのものを認識することができませんが、Alt属性に記述されたテキストを認識します。このテキストが検索エンジンに画像の内容を伝え、画像検索結果や通常の検索結果において、ウェブページが適切に評価される手助けをします。

## 画像が表示されない場合のフォールバック

ネットワークの問題や画像の破損などで画像が表示されない場合でも、Alt属性に記述されたテキストが表示されるため、ユーザーにとってその部分が何を表しているのかがわかります。

# Alt属性がないと何が困るのか

Alt属性が設定されていない場合、以下のような問題が発生する可能性があります。

## アクセシビリティの低下

視覚に障害があるユーザーにとって、画像の内容が全く伝わらなくなります。これにより、ウェブサイトの情報が適切に提供されないことになります。

## 検索エンジンの評価が低下

Alt属性がないと、検索エンジンは画像の内容を理解できません。その結果、画像に関連する検索結果に表示されにくくなり、ウェブページ全体のSEO評価にも悪影響を与える可能性があります。

## ユーザーエクスペリエンスの低下

画像が表示されない場合、代替テキストが表示されないため、ユーザーはその画像が何を表しているのかを理解することができません。特に、画像が重要な情報を含んでいる場合、ユーザーにとっての利便性が大きく損なわれます。

# 適切なAlt属性の記述方法とは

Alt属性を記述する際には、以下のポイントに注意する必要があります。

## 簡潔かつ明確な説明

Alt属性には画像の内容を簡潔かつ明確に説明するテキストを記述します。冗長な表現や余計な情報を含めず、画像の本質を正確に伝えることが重要です。

```html
<img src="logo.png" alt="会社のロゴ">
```

## コンテキストに合わせた説明

画像がどのようなコンテキストで使用されているかを考慮して、Alt属性を記述します。たとえば、製品紹介ページにおいて、製品の画像にはその製品名や特徴を記述すると効果的です。

```html
<img src="smartphone.jpg" alt="最新モデルのスマートフォン、スリムデザインと高画質カメラ搭載">
```

## 装飾用画像には空のAlt属性を設定

デザイン上の理由で使用される装飾用の画像には、空のAlt属性（`alt=""`）を設定します。これにより、スクリーンリーダーが不要な情報を読み上げないようにします。

```html
<img src="decoration.png" alt="">
```

# 適切な記述ができているかの確認方法

Alt属性が適切に記述されているかを確認する方法は以下の通りです。

## ブラウザの開発者ツールを使用する

ブラウザの開発者ツールを使用して、`<img>`タグに正しいAlt属性が設定されているかを確認します。また、画像が非表示になった場合の挙動をシミュレーションすることも可能です。

## スクリーンリーダーを使用して確認する

実際にスクリーンリーダーを使用して、Alt属性がどのように読み上げられるかを確認します。これにより、視覚障害を持つユーザーにとって適切な説明がなされているかを検証できます。

## オンラインツールを活用する

Alt属性の有無や内容を自動的にチェックしてくれるオンラインツールを使用することも効果的です。これにより、サイト全体のAlt属性の品質を効率的に評価できます。

# 最後に

この記事では、Alt属性の基本的な説明から効果やメリット、適切な記述方法について紹介してきました。
Alt属性は、ウェブサイトのアクセシビリティ向上やSEOにおいて非常に重要な役割を果たします。適切なAlt属性を設定することで、すべてのユーザーにとって使いやすいウェブサイトを構築することができます。
これを参考に、今後のウェブ開発においてAlt属性の設定をしてみてください！
現在ではXやInstagramといったSNSでもAlt属性をつけられるようになっています。
snsをよく使う人はそこで試してみるのもおすすめです。
ここまで読んでいただきありがとうございました！