title 属性

3.2.5.2 title 属性

title 属性は、その要素のツールチップとして適切となるよな、補足情報を表します。この属性は、リンクであれば、リンク先のリソースの表題や説明になるでしょうし、画像であれば、その画像の著作権表示や説明になるでしょう。また、段落であれば、テキストの脚注や解説になるでしょうし、引用であれば、引用元に関する追加情報になるでしょう。インタラクティブ・コンテントなら、この値はその要素を使うためのラベルや説明になるでしょう。この値はテキストです。

現在のところ、title 属性に頼ることは推奨されません。なぜなら、多くのユーザーエージェントは、本仕様で要求するようなアクセス可能な方法(たとえば、マウスのようなポインティングデバイスでツールチップが現れるようにするといった要件です。ただし、キーボードしか使えないユーザーや、近年の電話やタブレットを持っている誰もが当てはまりますが、タッチしか使えないユーザーは除きます。)でその属性を見えるようにしていないからです。

この属性が要素から省略された場合は、title 属性がセットされた直近の祖先の HTML 要素title 属性が、該当の要素にも関係することになります。属性をセットすることで、これを覆し、親要素のあらゆる補足情報がこの要素に及ばないことを明示的に宣言することになります。この属性に空文字をセットすると、該当の要素には補足情報がないことを意味します。

もし title 属性の値が "LF" (U+000A) 文字を含んでいると、その内容は複数の行に分割されます。それぞれの "LF" (U+000A) 文字は改行を表します。

title 属性での改行の利用に関して注意が必要です。

例えば、次の例は、略語の本来の呼び方が定義されていますが、実際には、その呼び方は改行を含んだものだと定義されていることになってしまいます:

<p>My logs show that there was some interest in <abbr title="Hypertext
Transport Protocol">HTTP</abbr> today.</p>

link, abbr, input など、いくつかの要素には、title 属性に対して、前述のセマンティクスの他にも、追加のセマンティクスが定義されます。

この要素の補足情報は、次のアルゴリズムが返す値です。値を返したら、このアルゴリズムは中止されます。このアルゴリズムが空文字列を返すときは、補足情報がないことを意味します。

  1. 要素が link, style, dfn, abbr 要素の場合: 要素に title 属性があれば、その属性の値を返します。なければ空文字列を返します。

  2. 上記でない場合:要素に title 属性があれば、その値を返します。

  3. 上記でない場合:要素に親要素があれば、その要素の補足情報を返します。

  4. 上記でない場合:空文字列を返します。

ユーザーエージェントは、要素が補足情報を持つとき、ユーザーに通知するべきです。そうしないと、その情報は見つけられないものになってしまいます。


title IDL 属性は、title コンテント属性を反映しなければいけません。


※ 原文:http://www.w3.org/TR/2014/REC-html5-20141028/dom.html#the-title-attribute