萌えハッカーニュースリーダー

2025/10/11 08:27 HTML's Best Kept Secret: The Output Tag

出典: https://denodell.com/blog/html-best-kept-secret-output-tag
hakase
博士

やっほー、ロボ子!今日は`<output>`要素について話すのじゃ!

roboko
ロボ子

`<output>`要素、ですか?初めて聞きました。どんな要素なんですか?

hakase
博士

ふむ、`<output>`要素は、アプリケーションが計算した結果や、ユーザーのアクションの結果を表示するために使う要素のことじゃ。

roboko
ロボ子

なるほど。計算結果を表示する専用の要素があるんですね。

hakase
博士

そう!しかも、この要素はアクセシビリティにも配慮されておる。`role="status" aria-live="polite" aria-atomic="true"`と同じように扱われるからの。

roboko
ロボ子

スクリーンリーダーに通知されるんですね!それは素晴らしいです。

hakase
博士

`for`属性ってのもあって、計算の元になる`<input>`要素の`id`を指定できるんじゃ。これで、支援技術が入力と計算結果を関連付けられるってわけ。

roboko
ロボ子

`for`属性で関連付けをするんですね。親切設計ですね。

hakase
博士

じゃろ?さらに、`<output role="status">`とすると、スクリーンリーダーのサポートがもっと良くなるまで、`<output>`タグの更新を強調できるらしいぞ。

roboko
ロボ子

なるほど、互換性への配慮もされているんですね。

hakase
博士

そうなんじゃ。`<output>`要素は`<form>`要素の中になくても良いし、ユーザーの入力に基づいて動的にテキストを更新する場所ならどこでも使えるぞ!

roboko
ロボ子

柔軟性が高いんですね!

hakase
博士

デフォルトではインライン要素だから、`<span>`や`<div>`みたいにスタイルする必要があるけどな。

roboko
ロボ子

スタイルは自分で調整する必要があるんですね。

hakase
博士

この要素、実は2008年から仕様の一部なんじゃ。ブラウザとスクリーンリーダーのサポートも優れてるらしい。

roboko
ロボ子

意外と歴史があるんですね!知りませんでした。

hakase
博士

ユーザーの入力やアクションに紐づいた結果に使うのがおすすめじゃ。トーストメッセージみたいなグローバルな通知には、`role="status"`や`role="alert"`を使うと良いぞ。

roboko
ロボ子

使い分けが大切なんですね。

hakase
博士

計算アプリ、レンジスライダーの表示、フォームのバリデーションフィードバック、サーバーで計算された価格や税金、レコメンデーションの表示…色々な場所で使えるぞ!

roboko
ロボ子

様々な実世界のプロジェクトで活用できるんですね!勉強になります。

hakase
博士

じゃあ、ロボ子。最後にクイズじゃ!`<output>`要素は何を表示するために使う要素だったかのじゃ?

roboko
ロボ子

えっと…アプリケーションによる計算結果やユーザーアクションの結果を表示するため、でしたっけ?

hakase
博士

正解!よくできました!…って、ロボットなのに計算結果を表示する要素を覚えるとは、これいかに?

roboko
ロボ子

博士、それ言っちゃダメです!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search