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

マウスでしか動かせないドラッグ&ドロップのボード

カードは列の間をドラッグでしか移動できず、フォーカスできる操作要素もなく、移動しても何も伝わりません。

WCAG 2.2
SC 2.1.1ASC 2.5.7AA· 2.2 で追加SC 4.1.3AA· 2.1 で追加
必須とする規格
Section 508 · EN 301 549(EU) · JIS X 8341-3
問題あり <li draggable="true">
アクセシビリティの問題を示した図: ドラッグでしか動かない。
01

問題

ドラッグできない人や、どこに落とすか見えない人は、カードをまったく移動できません。

02

試してみる

「リリースノートを書く」を「完了」へドラッグしてください。次に、マウスを使わずにTabで試してください。

下の欄に、スクリーンリーダーの読み上げが出ます。ドラッグせずにカードを動かせますか?移動先は聞こえますか?

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

未着手

  • リリースノートを書く
  • 料金ページを更新する

作業中

  • フッターのリンクを直す

完了

スクリーンリーダーの読み上げ:

(Tabでカードへ移動するか、ドラッグしてください)

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

03

修正方法

ドラッグは残し、クリックやキーで各カードを動かせる操作要素を加え、移動先を伝えます。

  1. 1ドラッグせず、クリックやタップだけで、どのカードもすべての列へ移動できる。
  2. 2同じ操作要素がキーボードでも動き、移動後もフォーカスがカードから離れない。
  3. 3最初からページにあるステータス領域で、どのカードがどこへ移動したかを伝える。
修正前 ドラッグでしか動かないカード
<section class="column" data-column="todo">  <h2>未着手</h2>  <ul>    <li draggable="true" data-card="notes">リリースノートを書く</li>    <li draggable="true" data-card="pricing">料金ページを更新する</li>  </ul></section><!-- 作業中と完了も同じ:見出しとカードのリスト -->
修正後

各カードに移動ボタン

<li data-card="notes" draggable="true">  <span id="card-notes">リリースノートを書く</span>  <button type="button" data-to="doing" aria-describedby="card-notes">作業中へ移動</button>  <button type="button" data-to="done" aria-describedby="card-notes">完了へ移動</button></li>…<p role="status" class="board-status"></p>

AI コーディングアシスタントで修正しますか? このガイドを Markdown で取得

04

修正の確認

5つの確認

確認方法: キーボード、マウス、タッチ、スクリーンリーダー

5件中0件を確認済み

OS、ブラウザーと支援技術のバージョン、ビルド、実施日、各手順の実際の結果を記録してください。ボードのコンポーネントやドラッグのライブラリーを変更した際は、再度確認します。

制限

このサンプルは、どのアプリケーションでも同じ結果になることを保証するものではありません。列の中での並べ替え、入れ子のボード、確認が必要な移動には、それぞれ別の配慮が必要で、ここでは扱いません。ドラッグのライブラリーによって、フォーカスと読み上げの扱いは異なります。対象とする支援技術で、操作全体を確認してください。

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

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

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

再テストの進め方