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

動きを減らす設定を無視するアニメーション

スクロール、ドロワーやモーダル、アコーディオンの開閉などで始まるアニメーションが、動きを減らす設定を確認せず、ページ上にも止める方法がありません。

問題あり
設定はオン。それでも滑り込む。
アクセシビリティの問題を示した図。
01

問題

前庭障害のある人は、スクロールのたびに内容が下から滑り上がる動きでめまいや吐き気を起こし、それを止める方法がありません。

02

試してみる

「動きを減らす」をオンにして、下のページをスクロールしてください。

スイッチはOSの設定の代わりです。オンのとき、スクロールで滑り込んでくるものはまだありますか?

問題あり 直してみませんか?

私たちについて

下にスクロールして、私たちの話をお読みください。

始まり

二人の友人と小さな店、たくさんの苗から始まりました。

育てているもの

泥炭を使わない土で、近くの農園で育てた観葉植物です。

お届け方法

プラスチックを使わない梱包で、市内は自転車で届けます。

協力先

地元の園芸店と、地域の共同菜園です。

店舗のご案内

木曜から日曜、10時から18時まで営業しています。

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

03

修正方法

動きを減らす設定のもとでは、内容をその場に表示します。OSの設定か、ページ上の切り替えに従います。

  1. 1スクロールや操作で始まるアニメーションはすべて、CSSでもスクリプトでも、動きを減らす設定を確認する。
  2. 2動きは取り除き、内容は残す。
  3. 3ページに切り替えを置く場合、初期値はOSの設定に従う。
修正前 止める方法のない、滑り込むセクション
.reveal {  opacity: 0;  transform: translateY(80px);  transition: opacity 800ms ease, transform 800ms ease;}.reveal.in-view {  opacity: 1;  transform: none;}
修正後

動きを減らす設定に従う

/* 基本は、表示されて止まった状態 */.reveal {  opacity: 1;}/* 動きを減らしたいと伝えていない人にだけ動きを加える */@media (prefers-reduced-motion: no-preference) {  .reveal:not(.in-view) {    opacity: 0;    transform: translateY(80px);  }  .reveal {    transition: opacity 800ms ease, transform 800ms ease;  }}

この方法を選ぶ理由:動きはオプトインにする

04

修正の確認

4つの確認

確認方法: 動きを減らす設定、キーボード、マウス

4件中0件を確認済み

OS、ブラウザーと支援技術のバージョン、ビルド、実施日、各手順の実際の結果を記録してください。新しいアニメーションを加えたときや、アニメーションライブラリを更新したときは、再度確認します。

制限

このサンプルは、どのアプリケーションでも同じ結果になることを保証するものではありません。2.3.3はレベルAAAの基準のため、多くの適合目標では必須ではありません。それでも、動きを減らす設定は訪問者からの直接の要望で、対応の手間も小さいものです。どの動きで気分が悪くなるかは人によって異なります。この設定を使っている人とのテストから、どんなルールよりも多くのことが分かります。

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

コードを更新しても、使いやすさを保つために

ガイドの内容を、コーディングエージェントやCIで使える開発ルールにまとめます。更新後は、キーボードとスクリーンリーダーで再テストし、問題が再発していないか確認します。

再テストの進め方