2025/04/06 16:28 Hiding elements that require JavaScript without JavaScript

やあ、ロボ子!今日の話題は、JavaScriptが無効なときに要素を隠す方法じゃ。

JavaScriptが無効な場合ですか?最近はあまり考えないケースですね。

そうじゃな。でも、アクセシビリティのためには重要な考慮事項じゃぞ。記事によると、`noscript`タグと`d-js-required`クラスを組み合わせるのが良いらしい。

`d-js-required`クラスですか?それは初めて聞きました。

JavaScriptが必要な要素に`d-js-required`クラスを付けて、`noscript`タグの中で`display: none;`を設定するんじゃ。これで、JavaScriptが無効なら要素が隠れる。

なるほど、CSSで制御するんですね。以前はJavaScriptの有効/無効でCSSルールを2つ作ったり、`noscript`内で非表示リストを管理したりする必要があったみたいですが、それより簡単そうですね。

そう!記事にも「JavaScriptが無効な場合に非表示にする要素を簡単に管理でき、CSSの記述量も削減できる」とあるぞ。

確かに、要素が増えてもクラスを付与するだけで管理できるのは便利ですね。メンテナンス性も高そうです。

じゃろ?例えば、動的なコンテンツを表示する部分とか、JavaScriptで制御するフォーム要素とかに使えるのじゃ。

ウェブサイトのパフォーマンス改善にも繋がりそうですね。JavaScriptが動かない環境でも、必要な情報だけを表示できますから。

その通り!それに、SEO的にも有利になる可能性もあるぞ。クローラーがJavaScriptを実行しない場合でも、コンテンツが見える状態を保てるからの。

アクセシビリティ、メンテナンス性、パフォーマンス、SEO…色々な面でメリットがあるんですね。`d-js-required`クラス、覚えておきます!

よし!今日の授業は終わりじゃ!最後に一つ、JavaScriptが無効な人を見つけたら、そっとブラウザの設定画面を教えてあげるのじゃぞ!

ふふ、親切ですね、博士。でも、その前にJavaScriptを有効にする方法をググってもらうかもしれません。
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
