←
慈愛結ノ宮縁側だより

サイト制作

HTMLのinertとは?見えている領域を操作対象から外すときの注意点

慈愛妃きづな

2026-11-08

この記事には広告・アフィリエイトリンクが含まれます。

Tabキーなどがあるキーボード左側
Tabキーなどがあるキーボード左側。キーボード操作時のフォーカス移動を考える参考写真です。 画像は配信用サムネイル/原図。内容の描き換え・切り抜きなし。 / Left keys of keyboard.jpg / Zuissii / CC BY 3.0 · 画像出典 · CC BY 3.0

リンクやボタンを含む領域をまとめて非操作状態にするinert。非表示との違い、支援技術への影響、解除時の確認を解説します。

inertは、見た目を消す属性ではない

inertは、要素とその子孫を操作対象から外すためのHTML属性です。リンクやボタンがクリックやフォーカスの対象にならなくなり、Tabキーによる移動順やアクセシビリティツリーからも除かれます。

一方、属性を付けただけで画面から消えるわけではありません。見えているのに押せない領域を作れるため、何が操作できる状態なのかを視覚的にも分かるようにする必要があります。

falseと書くより、属性を取り除く

inertは論理属性です。HTMLで inert="false" と書いても、属性が存在するため無効化の指定として働きます。解除したいなら属性を取り除くか、JavaScriptのプロパティに false を設定します。

たとえば panel.inert = true; で対象を非操作状態にし、panel.inert = false; で解除するという書き方です。文字列としての"false"と、真偽値のfalseを混同しないことが、切り替え処理の大切な確認点になります。

ノートPCのキーボード
ノートPCのキーボード。マウスだけでなくキー操作でも画面を確認しましょう。 画像は配信用サムネイル/原図。内容の描き換え・切り抜きなし。 / Closeup of keys.jpg / John Snyder / CC BY-SA 4.0 · 画像出典 · CC BY-SA 4.0

個別ボタンの無効化とは、範囲が違う

一つのボタンを無効にするだけなら、その部品のdisabledを検討できます。inertは領域全体を対象にするため、内側の説明やリンクまで支援技術から除かれる影響があります。

単にクリックだけを止めるCSSや、支援技術から隠す属性と同じ効果だと思わないようにしましょう。表示中の必要な説明まで操作や読み上げの対象から外してしまわないか、指定する範囲を狭く確認します。

開くときだけでなく、閉じた後を確認する

モーダルなどで背景へinertを付ける場合は、閉じた後に解除されるか、キーボードのフォーカスを戻せるかを確かめます。例外処理で解除が抜けると、画面は見えるのに操作できない状態が残ります。

ネイティブのdialogをshowModal()で開く場合には、モーダルダイアログ固有の動作もあります。自作処理を重ねる前に標準の挙動を確認してください。この記事は仕様の解説であり、完成したモーダル実装を一式提供するものではありません。

読み物の一覧へ

慈愛妃きづなについて・記事の編集方針

あわせて読みたい関連記事

記事一覧へ