本文へ移動
easeweb
ご相談
トピックを検索

一時停止ボタンのないまま流れ続ける背景動画

トップページの見出しの後ろで、消音の動画がページを開いた瞬間から繰り返し流れ続け、止める手段がページのどこにもない

WCAG 2.2
SC 2.2.2A
必須とする規格
Section 508 · EN 301 549(EU) · JIS X 8341-3
問題あり <video autoplay muted loop playsinline>
アクセシビリティの問題を示した図: 認知:どうすれば止まるの?
01

問題

動きで気が散る人や、画面拡大ソフトで読む人が、見出しの後ろで流れ続ける映像を止められない

02

試してみる

見出しの後ろの動画を、まずマウスで、次にTabキーで止めてみましょう

ヒーローをクリックし、ポインターを重ね、Tabキーでページを進んでみてください。ショップの中に、豆の動画を止めるものはありません。「デモを停止」はこの学習ページのボタンで、ショップのものではありません。次に修正を適用し、一時停止ボタンを押すか、短い動画がひとりでに止まるのを確かめてください。

問題あり 修正できますか?

問題見出しの後ろでループする消音の動画
Fernhill Coffee

毎週月曜日に焙煎する新鮮なコーヒー

シングルオリジンの豆を、焙煎したその週にお届けします。

コーヒーを見る

今週のコーヒー

再現デモです。「問題あり」は意図的にアクセシブルでない状態にしています。

03

修正方法

動画を止められるようにするか、5秒以内に終える

修正前
問題見出しの後ろでループする消音の動画
<section class="hero">  <video class="hero-video" src="beans.mp4" poster="beans.jpg" autoplay muted loop playsinline></video>  <div class="hero-text">    <h1>毎週月曜日に焙煎する新鮮なコーヒー</h1>    <p>シングルオリジンの豆を、焙煎したその週にお届けします。</p>    <a href="/shop">コーヒーを見る</a>  </div></section>
問題点3点
  • 動画はページの読み込みと同時に始まり、loop によって、ページを開いている間ずっと8秒の映像を繰り返します。
  • muted で音は消えますが、動き続けます。
  • controls がなく、ページ独自のボタンもないため、マウスでもキーボードでもタッチでも止められません。
修正後

ヒーローの一時停止ボタン

<section class="hero">  <video class="hero-video" src="beans.mp4" poster="beans.jpg" muted loop playsinline aria-hidden="true"></video>  <button type="button" class="hero-pause">    <svg aria-hidden="true" focusable="false">      <use href="#icon-pause"></use>    </svg>    <span class="visually-hidden">背景動画を一時停止</span>  </button>  <div class="hero-text">    <h1>毎週月曜日に焙煎する新鮮なコーヒー</h1>    <p>シングルオリジンの豆を、焙煎したその週にお届けします。</p>    <a href="/shop">コーヒーを見る</a>  </div></section>
修正の手順6ステップ
  1. ヒーローの中の言葉より前に、HTML標準の <button> を置きます。キーボードでは「コーヒーを見る」より先に届きます。見た目は右上の角に置くので、読む順序でも最初に来ます。ホバーしなくても、どの画面幅でも常に表示されます。
  2. 白いアイコンの下に暗い円を敷き、映像の最も明るいコマでも最も暗いコマでもコントラストを保ちます。
  3. ボタンで動画そのものの pause() と play() を呼びます。動画は、もう一度押すまで止まったままです。
  4. アイコンと隠した名前は、動画の play と pause のイベントに合わせて「背景動画を一時停止」と「背景動画を再生」の間で切り替えます。ブラウザーが再生を始めなかったときも、ボタンは正しい状態を伝えます。
  5. 動画は雰囲気づくりのためだけのものなので、aria-hidden="true" でスクリーンリーダーから隠し、何を操作するかはボタンに伝えさせます。
  6. autoplay を外してスクリプトで再生を始め、動きを減らす設定にしている人には止まったままにします。これは補助です。2.2.2を満たすのはボタンで、スクリプトが動かなければ何も動きません。

これで修正前の例は直り、ループする映像もデザインもそのままで、2.2.2を満たします。

04

デザインの案

止められるようにすれば、映像は残せる

ヒーローの後ろの動画を止める操作を、4通りに描きました。それぞれマウスで試してから、マウスを使わずにTabキーで進んでみてください。3つはホバーしなくても見えて押せますが、1つはマウスにしか姿を見せません。

デザインファイルで

  • ヒーローを、一時停止の操作が常に見える状態で描く。ホバー時だけでなく、止めた後の「再生」の状態も描く。
  • 操作には暗い色か明るい色の下地を付け、映像の最も明るいコマでも最も暗いコマでも3:1以上を保つ。
  • 最小24 × 24ピクセルで描き、映像の上でのフォーカスの枠も描く。
  • 操作を置かない場合は、動画が5秒以内で1回だけ再生されることを、ヒーローの横に書く。

合格

  • 毎週月曜日に焙煎

    言葉の入った一時停止ボタン ヒーローの下の角に置いた濃い色のボタンです。アイコンと「一時停止」の文字は#21160fの上の白で17.70:1あり、どのコマの上でも読めます。記号を知らない人にも言葉で伝わり、アイコンと一緒に「再生」に変わります。
  • 毎週月曜日に焙煎

    ヘッダーの「動き」スイッチ サイトのヘッダーにある小さな「動き」スイッチで、この動画とサイト内のほかの動くものをすべて止め、ページを移っても止まったままにします。ヒーローの映像の上には何も描かずに済みます。スイッチのオフの状態も、どのページでも同じ位置に描きます。
  • 毎週月曜日に焙煎

    静止画のヒーローと「焙煎を見る」 ヒーローは映像の1コマの静止画で始まり、「焙煎を見る」ボタンを添えます。押すまで何も動かず、押した後は同じボタンで止められます。最初の画面は誰にとっても落ち着いていて、見たい人は映像を見られます。

不合格

  • 毎週月曜日に焙煎

    ホバーで現れる一時停止アイコンWCAG 2.2.2 ポインターをヒーローに重ねている間だけ角のアイコンが現れ、それ以外のときは映像の上に何もありません。スマートフォンにはホバーするポインターがなく、Tabキーで移動すると、見えないままのアイコンにフォーカスが移ります。サンプルは4秒で止まりますが、実際のパターンはループし続けます。
05

修正の確認

5項目

確認方法: キーボード、タッチ、マウス、動きを減らす設定、スクリーンリーダー

5件中0件を確認済み

OS、ブラウザーと支援技術のバージョン、ビルド、実施日、各手順の実際の結果を記録してください。ヒーロー、その動画、再生のスクリプトを変更した際は、再度確認します。

制限

このサンプルは、どのアプリケーションでも同じ結果になることを保証するものではありません。扱うのは動きだけです。映像の上の文字は、どのコマの上でもコントラストが必要で、これはブランドカラーや写真の上でコントラストが足りない文字で扱います。1秒間に3回を超えて点滅する映像は、2.3.1の別の確認項目で、閃光の分析ツールで確認します:発作を誘発するおそれのある点滅するバナーや動画。音付きで再生される動画は止められない自動再生の音声で、見るための動画は字幕のない動画と、確認されていない自動字幕とキーボードで再生できない、または字幕ボタンのない動画で扱います。動画が止まった後のページが落ち着いて読めるかは、人が判断する必要があります。

よくある問題を再現した学習用のサンプルです。実在のクライアントの診断結果ではありません。コードは出発点となる実装例のため、実際の製品でも確認してください。ここでは支援技術でのテスト結果は報告していません。

EaseWebのサービス

修正した問題を、次のリリースで再発させない

このガイドのような修正方法を、コーディングエージェントが従うルールと、CIのチェックに組み込みます。あわせて定期的に、キーボードとスクリーンリーダーで手動の再テストを行います。

サービス内容を見る