カテゴリ: Bootstrap 更新日: 2025/12/17

Bootstrapのアクセシビリティ完全ガイド!初心者でもわかるvisually-hiddenの使い方

「visually-hidden」クラスの使い方:スクリーンリーダー向けテキスト
「visually-hidden」クラスの使い方:スクリーンリーダー向けテキスト

先生と生徒の会話形式で理解しよう

生徒

「Bootstrapでスクリーンリーダー向けのテキストって書けるんですか?画面には見えないけど音声読み上げでは伝えたい場合があるって聞いたんですが…」

先生

「そんなときに使えるのがvisually-hiddenというクラスです。視覚的には非表示なのに、スクリーンリーダーでは読み上げてもらえる便利な仕組みなんだよ。」

生徒

「普通のdisplay:noneとは何が違うんですか?初心者でも使えますか?」

先生

「もちろん初心者でも使えるよ。実際の例を見ながらわかりやすく説明していこう。」

1. visually-hiddenクラスとは?初心者にもわかる基礎

1. visually-hiddenクラスとは?初心者にもわかる基礎
1. visually-hiddenクラスとは?初心者にもわかる基礎

visually-hiddenとは、Bootstrapのアクセシビリティ機能のひとつで、見た目では非表示だけれどスクリーンリーダーには読み上げてもらえるテキストを作るためのクラスです。視覚的に余計な情報を減らしつつ、音声読み上げユーザーには必要な説明を伝えられるため、アクセシビリティの向上に役立ちます。

通常のCSSでdisplay:noneやvisibility:hiddenを使うと、スクリーンリーダーでも読み上げされなくなってしまいます。これでは目が見えない人にとって必要な案内が届きません。そこでBootstrapはWCAGの基準に基づき、読み上げ専用テキストを作るためのvisually-hiddenクラスを提供しています。

2. visually-hiddenの使いどころとは?初心者向けに具体例で解説

2. visually-hiddenの使いどころとは?初心者向けに具体例で解説
2. visually-hiddenの使いどころとは?初心者向けに具体例で解説

スクリーンリーダーを使う人は、画面にどんな情報があるのか音声で理解します。そのため、画像の説明、ボタンの補足説明、フォームの説明などが正しく読み上げられることが重要です。

例えばアイコンだけで表現されたボタンがあったとします。視覚的にはアイコンだけで意味が分かっても、音声読み上げのユーザーには意味が伝わりません。そんなときにvisually-hiddenの出番です。音声用の説明文を追加しておくことで、全てのユーザーが理解しやすいサイトになります。


<button class="btn btn-primary">
    <i class="bi bi-download"></i>
    <span class="visually-hidden">ファイルをダウンロード</span>
</button>
ブラウザ表示

この例では、見た目にはダウンロードアイコンだけが表示されますが、スクリーンリーダーでは「ファイルをダウンロード」と読み上げられます。これにより、目が見えにくい方でも操作内容を正確に理解できます。

3. visually-hiddenがアクセシビリティを高める理由

3. visually-hiddenがアクセシビリティを高める理由
3. visually-hiddenがアクセシビリティを高める理由

アクセシビリティの考え方では、誰でも情報にアクセスできることが大切です。言葉の説明がないと、音声読み上げユーザーは何を押したらよいのかわからず、操作が困難になってしまいます。

視覚的に同じ情報を何度も見せると煩雑になりますが、読み上げ専用テキストで補足すれば、視覚的デザインを崩さずに情報を提供できます。Bootstrapのvisually-hiddenはこの役割を非常にうまく果たします。

4. visually-hiddenを使ったフォームの説明文の付け方

4. visually-hiddenを使ったフォームの説明文の付け方
4. visually-hiddenを使ったフォームの説明文の付け方

フォームは入力内容の説明が不足してると誤入力につながります。しかし画面の見た目をスッキリさせたい場合もあります。そのときに視覚では表示せずスクリーンリーダーだけに説明する方法としてvisually-hiddenが使えます。


<label for="email" class="visually-hidden">メールアドレスを入力してください</label>
<input id="email" class="form-control" type="email" placeholder="メールアドレス">
ブラウザ表示

画面上は入力欄だけが見えますが、スクリーンリーダーはラベルの説明を読み上げます。そのため、見た目はシンプルなのにアクセシビリティはしっかり確保されます。

5. visually-hiddenを使うときの注意点と初心者が知っておくべきポイント

5. visually-hiddenを使うときの注意点と初心者が知っておくべきポイント
5. visually-hiddenを使うときの注意点と初心者が知っておくべきポイント

visually-hiddenは便利ですが、使い方を間違えると逆に情報が伝わらなくなる可能性があります。読み上げが必要な部分だけを隠し、視覚的にも必要な情報はきちんと表示することが重要です。

例えば、ボタンの中に隠しテキストを入れすぎると読み上げ時間が長くなってしまい、ユーザーが混乱することがあります。音声案内は簡潔にすることが基本です。

初心者の方は「画面に表示しない説明はすべてvisually-hiddenに入れよう」と考えがちですが、必要な説明はなるべく通常表示し、どうしても見た目に不要な場合だけ隠すという使い方が自然です。

カテゴリの一覧へ
新着記事
New1
HTML
HTMLとは何か?Webページを作る仕組みを初心者向けに完全解説
New2
Bootstrap
Bootstrap CDNの使い方を完全解説!初心者でもわかる読み込み順とSRIとdeferの設定
New3
Bootstrap
Bootstrapの自動レイアウトと比率指定を完全解説!.colと.col-6の使い分けを初心者向けにやさしく説明
New4
Bootstrap
Bootstrap 5 のカラーと背景色を完全ガイド!初心者向け色の使い分け解説
人気記事
No.1
Java&Spring記事人気No1
CSS
CSSグリッドレイアウト完全入門!display: grid の基本と使い方を初心者向けにやさしく解説
No.2
Java&Spring記事人気No2
CSS
CSSの複数セレクタ指定を完全解説!初心者でもわかるカンマ区切りの使い方
No.3
Java&Spring記事人気No3
CSS
CSSで要素のサイズを自動調整!autoとfit-contentの使い方
No.4
Java&Spring記事人気No4
CSS
CSSでテキストの折り返しを完全解説!初心者でもわかる基本と注意点
No.5
Java&Spring記事人気No5
CSS
CSSのフレックスボックスで要素を左右に寄せる方法を完全ガイド!初心者でもわかるjustify-content: space-between
No.6
Java&Spring記事人気No6
CSS
CSS Gridとは?初心者でもわかるグリッドレイアウトとフレックスとの違いをやさしく解説
No.7
Java&Spring記事人気No7
CSS
CSSの画面サイズ対応スタイル完全ガイド!初心者でもわかる相対単位の使い方
No.8
Java&Spring記事人気No8
CSS
CSSフレックスボックス完全解説|Gridとの違いとFlexboxが得意なレイアウトパターンを初心者向けに理解しよう