WAI-ARIA 1.2

ウィジェット ARIA 属性

カスタムUIコンポーネントの状態を支援技術に伝えるための属性です。チェック状態、展開状態、選択状態、値の範囲などを表現します。


属性一覧

属性説明使用例
aria-checkedtrue | false | mixedチェックボックスやラジオボタンの選択状態を示します。mixed はトライステートチェックボックスに使用します。
<div role="checkbox" aria-checked="true">
aria-expandedtrue | false折りたたみ可能な要素の開閉状態を示します。アコーディオン、ドロップダウンメニューなどに使用します。
<button aria-expanded="false" aria-controls="panel">
aria-selectedtrue | falseタブ、リスト項目、ツリー項目などの選択状態を示します。
<div role="tab" aria-selected="true">
aria-pressedtrue | false | mixedトグルボタンのオン/オフ状態を示します。pressed はボタン要素に使用します。
<button aria-pressed="false">太字</button>
aria-valuenownumberスライダーやプログレスバーの現在値を指定します。
<div role="slider" aria-valuenow="50">
aria-valueminnumberレンジウィジェットの最小値を指定します。
<div role="slider" aria-valuemin="0">
aria-valuemaxnumberレンジウィジェットの最大値を指定します。
<div role="slider" aria-valuemax="100">
aria-readonlytrue | false要素が読み取り専用であることを示します。値は表示されますが編集できません。
<input aria-readonly="true" value="確定値">
aria-requiredtrue | falseフォームフィールドが入力必須であることを示します。
<input aria-required="true">
aria-invalidtrue | false | grammar | spelling入力値にエラーがあることを示します。バリデーションエラーの通知に使用します。
<input aria-invalid="true" aria-describedby="err">

ライブデモ

aria-expanded デモ:カスタムアコーディオン

ボタンをクリックまたはEnter/Spaceで開閉します。aria-expanded の値がリアルタイムで変化します。

aria-checked デモ:カスタムチェックボックス

カスタムスタイルのチェックボックスです。aria-checked がリアルタイムで変化します。

通知を受け取るaria-checked="false"
ニュースレターを購読aria-checked="false"
ダークモードを有効化aria-checked="false"
ARIA なし
<div class="accordion-btn"
     onclick="toggle()">
  セクション
</div>
<!-- 状態が不明 -->
ARIA あり
<button aria-expanded="false"
        aria-controls="panel-1">
  セクション
</button>
<!-- 開閉状態が明確 -->
ウィジェット属性はユーザー操作に応じて動的に更新する必要があります。 JavaScriptで状態が変わるたびに、対応するARIA属性も必ず更新しましょう。

参考リンク