* title 要素型 (HTML, XHTML 1) [14] [CODE(HTMLe)[title]] 要素の内容には、 文書の題を入れます。''すべての HTML 文書で'' [CODE(HTMLe)[title]] 要素は''必須''です。 [37] 仕様書: - [[HTML 2.0]]: [[RFC 1866]] 5.2.1. Title: TITLE - [[HTML 4]] [18] :[[開始タグ]]:必須 :[[終了タグ]]:必須 :[[内容模型]]:[CODE(SGML)[(#[[PCDATA]])*]] :[[属性]]: ,[CODE(HTMLa)[[[dir]]]] , , ,[[書字方向]] ,"[HTML4], [XHTML1]" ,[CODE(HTMLa)[[[lang]]]] ,[[言語札]] ,(継承) ,[[自然言語]] ,"[HTML4], [XHTML1]" ,[CODE(HTMLa)[[[xml]]:lang]] ,言語札 ,(継承) ,自然言語 ,[XHTML1] [[#comment]] ** 内容 *** 構文 [17] この要素の内容は [CODE(SGML)[[[PCDATA]]]] として定義されていますが、 [[文字参照]]は使用してもよい一方で[[注釈宣言]]は禁止されています [SRC[HTML 4]]。 [WEAK[(適合 [[SGML応用]]でこんなのありですか?)]] [27] 内容模型を [[HTML-CDATA]] として扱う実装が古くから多々あります。 たとえば [SAMP(HTML)[HTML の <b> と <i> について]] の内容は文字列 [Q[HTML の について]] と扱われたりします。 [32] [CODE(SGML)[[[RCDATA]]]] として扱う実装もありますね。 [[#comment]] *** 題名の付け方 [15] [[著者]]は、文書の内容を識別するのに [CODE(HTMLe)[title]] 要素を使うべきです。 [[利用者]]が文脈外から参照することもありますから、 文脈がはっきりする題を使うべきです [SRC[HTML 2.0, HTML 4]]。 例えば、[CITE[紹介]]ではなく[CITE[HTML 4 の紹介]] とするべきです。 [33] >>16 のように [CODE(HTMLe)[title]] 要素の内容は種々の場面に利用されるのですが、 古くは、ウィンドウ・システムの制限で title bar に[[日本語文字]]が表示できないとか、 [[栞]]の名前の既定値として使われるけどその部分の font が欧文用で日本語文字が表示できないとか、 不都合が色々と出る環境がありました (今でもあるのか?)。 そのために、本文は仮名や漢字で書いても [CODE(HTMLe)[title]] だけは羅馬字で書いたり英語で書いたりする人が少なくありませんでしたし、 そうするべきだと積極的に主張する人もいました (メイルの [Q[[CODE(822)[[[Subject]]]] は英語]]論 [WEAK[(欧米人でも最低題名で内容が想像くらいはつくように英語にしろという主張。)]] とも絡んでいたのかも)。 [23] 昔 [CODE(MIME)[[[text/html]]]] な[[本体部分]]を含んだ[[電子メイル]]を送る (プログラムを書く) 必要がありまして、その時に必須の [CODE(HTMLe)[title]] 要素は邪魔だなあと思いました。上位プロトコルに [CODE(822)[[[Subject]]]] 欄があるのに。 [WEAK[[CODE(HTMLe)[[[body]]]] を[[根要素]]にすればよかったかも。ただし、それを [CODE(MIME)[text/html]] としてもよいのかという問題 ([CODE(MIME)[[[text/sgml]]]]?) と、そもそも subject と title が同じものかという問題がありますが。]] [40] 環境によっては題名に十分な長さが取れないので、 64文字未満に抑えるべきであるとされていた時代もありました。 [SRC[HTML 2.0]] [[#comment]] ** 応用 [38] [[access可能性]]のために、 [[UA]] は [CODE(HTMLe)[title]] 要素の情報を利用者に提供しなければなりません。 たとえ[[枠]]の中の文書として[[レンダリング]]される場合であってもです。 [SRC[HTML 4]]] [16] [CODE(HTMLe)[title]] 要素の主たる利用例: - [[WWWブラウザ]]窓の題 (の一部または全部) として使用 [SRC[HTML 2.0, [[NN]], [[IE]]]] - WWW ブラウザの上部または下部または右端または左端に表示 [SRC[[[NCSA Mosaic]]]] - 文書を局所ファイル・システムに保存する時の[[ファイル名]]の既定値として使用 [SRC[[[WinIE]]]] - 文書の情報を表示する時に一情報として表示 [SRC[[[NN]], [[WinIE]]]] - [[栞]]の札の既定値として使用 [SRC[[[NN]], [[WinIE]]]] - (後から読んだ) 他の文書からの参照があるときに、 その[[始点アンカー]]の [[tooltip]] などとして利用者に提供 - HTML 文書群から自動的に目次を生成するときに項目名として使用 [SRC[[[Apache]]]] - 履歴の項目名として表示 [SRC[HTML 2.0, NN, WinIE]] [[#comment]] ** 歴史 [38] [CODE(HTMLe)[title]] 要素型は、 HTML の一番最初から存在する要素型のうちの1つです。 HTML の SGML 的構造が整う以前には、 HTML 文書の最初には題名を書いて [CODE(HTMLe)[title]] タグで囲むものである程度に捉えられていました。 後に文章本体として表示されるわけではない [CODE(HTMLe)[title]] 要素は他の [CODE(HTMLe)[[[nextid]]]] 要素などと共に [CODE(HTMLe)[[[head]]]] 要素に入れることとされました。 以後、 [CODE(HTMLe)[title]] は HTML の必須の要素として現在に続いています。 [39] [[内容]]として値を記述するのに本文として表示されない唯一の要素として古来特殊な存在であったため、 内容の扱いにかかわる >>17- のような特別な事情が残っています。 [[#comment]] ** メモ [41] HTML 4 DTD の[[注釈]] (参考) には [Q[The TITLE element is not considered part of the flow of text. It should be displayed, for example as the page header or window title. Exactly one title is required per document.]] とあります。 ([[名無しさん]] [sage]) [[#comment]] * title 属性 (HTML, XHTML 1) [19] ほとんどの[[要素型]]に用意されている [DFN[[CODE(HTMLa)[title]] 属性]]は、 その要素についての助言的情報 (人間可読文) を記すのに使います。 [CODE(HTMLe)[title]] 要素が文書全体を説明するのに対して、 [CODE(HTMLa)[title]] 属性は特定の要素を説明します。 要素型によっては、特にその詳しい用法を定めているものもあります。 [20] UA はこの属性を様々な形で利用者に提示して構いません。 例: - [[tooltip]] 文として - 要素の[[特性]]情報の一つとして - [[状態棒]]のメッセージとして - 要素の内容の前後に小書きで表示, 小声で発音など [21] [CODE(HTMLa)[title]] 属性は有用ではありますが、 汎用的であるために機械処理はほとんど不可能であったり、 属性であるために構造を持てないと言ったような問題があります。 また、 [[WinIE]] などの多くの [[WWWブラウザ]]で tooltip として表示されるように実装されているがために tooltip のための[[タグ]]であると一部で誤解されていることも問題です。 仕様書: [22] ''The "title" attribute of "style" elements from Ian Hickson on 1999-11-04 (www-html@w3.org from November 1999)'' : [CODE(HTMLe)[[[style]]]] 要素の [CODE(HTMLa)[title]] 属性は [CODE(HTMLe)[[[link]]]] 要素による[[スタイルシート]]のリンクの扱いと同様に処理するのかどうかの話。 [42] HTML 4 DTD の[[注釈]] (参考) には、 [CODE(HTMLe)[[[style]]]] 要素の [CODE(HTMLa)[[[lang]]]] 属性と [CODE(HTMLa)[[[dir]]]] 属性は [CODE(HTMLa)[title]] 属性に適用されると書かれています。 ([[名無しさん]] [sage]) [43] >>22 HTML 4 DTD の[[注釈]] (参考) は [CODE(HTMLe)[[[link]]]] 要素も [CODE(HTMLa)[[[style]]]] 要素も (他のどの要素も) 単に [Q[advisory title]] とだけ書かれています。 ([[名無しさん]] [sage]) [[#comment]] ** ins 要素, del 要素 title 属性 (HTML, XHTML 1) [30] [CODE(HTMLe)[[[ins]]]] 要素や [CODE(HTMLe)[[[del]]]] 要素の [DFN[[CODE(HTMLa)[title]] 属性]]は、 変更した文についての注釈を入れるために使うことができます。 仕様書: [[HTML 4]] [[#comment]] *** 例 [31] [PRE(HTML)[ Furthermore, the latest figures from the marketing department suggest that such practice is on the rise. ]PRE] (HTML 4 仕様書より) この例では変更の理由が [CODE(HTMLa)[title]] 属性として記述されています。ある程度の分量があるなら、 別の文書や別の部分に記述して、 [CODE(HTMLa)[[[cite]]]] 属性でリンクした方が良いかもしれません。 [[#comment]] ** a 要素・link 要素 title 属性 (HTML, XHTML 1) [1] [34] [[HTML]] の [CODE(HTMLe)[[[a]]]] 要素および [CODE(HTMLe)[[[link]]]] 要素の [DFN[[CODE(HTMLa)[title]] 属性]]は、 [[連結]]の性質についての情報を指定できます。 仕様書: [[HTML 4]] 12.1.4 Link titles [[#comment]] *** レンダリング [35] HTML 4 仕様書は次のようなレンダリング例を挙げています。 - 読上げ - [[tool tip]] - [SAMP(CSS)[[[cursor]]]] の変更 [[#comment]] *** 例 [36] [PRE(HTML)[ ...some text...

You'll find a lot more in chapter two. See also this map of the enchanted forest. ]PRE] (HTML 4 仕様書より) [[#comment]] *** メモ [[#comment]] ** a 要素 title 属性 (HTML, XHTML 1) [2] [6] [[HTML]] の [CODE(HTMLe)[[[a]]]] 要素の [CODE(HTMLa)[title]] 属性は、 リンク先の文書の [CODE(HTMLe)[[[title]]]] 要素の代替として使われたことがありました。 画像へのリンクなどで使用すると有用です。 仕様書: [[HTML+]] ''Hypertext Links'' [[#comment]] ** a 要素 title 属性 (HTML, XHTML 1) [3] [3] しかしかつて、 HTML4 の遥か以前に、ひっそりと [CODE(HTML)[title]] 属性を実装していた (そして消えていった(w)) [[Infomosaic]] という[[ブラウザ]]がありました。 [4] このブラウザの独自拡張である [CODE(HTML)[a]] 要素の [CODE(HTML)[title]] 属性を指定することで、 [[href属性]]が [[mailto-URL]] である場合に、作成するメイルの [[Subject:欄]]に [CODE(HTML)[title]] 属性で指定した値が既定値として使われます。 [5] これハケーンした時は、なんでこんな古い [[UA]] に [CODE(HTML)[title]] 属性なんてあるんだ、とビクーリしますた [1] >>2-5 [[Lynx]] にもこれが実装されていました。 [[form]] 要素にもあるそうです。 - [13] ''URL Schemes Supported in Lynx'' - [24] >>3 確か、 Infomosaic 独自ではなくこの時代の mosaic 共通の独自拡張だったと思います。 mosaic が対応して Lynx も対応して、あと [[NN]] も対応すればデファクト標準まっしぐらのはずだったのに、 Netscape が [CODE(URI)[[[mailto]]:]] URI を拡張する方向に行ってしまって、 [CODE(HTMLa)[title]] 属性にとってはとんだ悲劇。 [[#comment]] ** form 要素 title 属性 (HTML, XHTML 1) [11] [CODE[A]] 要素の場合 (>>7) と同様に、 [[form]] 要素についても違った意味で使われています。 [[#comment]] *** 送信されるメッセージの題 [9] [[Lynx]] が昔から実装していて、 [[action]] 属性が [[mailto:]] [[URI]] である場合に、この値が送られる[[電子メイル]]・メッセージの [[Subject:]] 欄に使われます。 [CODE[A]] 要素の場合の >>1-5 と同じです。 [10] Lynx の help の説明によると、他の実装では同じ目的で [[subject]] 属性を使うものもあるので、 Lynx も対応している、とあります。 [[#comment]] *** 要素についての追加情報 [12] [[HTML4]] では他の要素の [CODE[title]] 属性と同様、追加情報 (人間向け。) を入れる欄としてこの属性を扱っています。 [[#comment]] * 属性値 xlink:type="title", title 型要素 (XLink) [25] [CODE(XMLa)[[VAR[xlink:]][[type]]]] 属性の値が [DFN[title]] である要素は、 [[XLink]] [DFN[[CODE(XML)[title]] 型要素]]です。 仕様書: [26] [CODE(XML)[title]] 型要素は、[[連結]]や[[弧]]や[[遠隔資源]]についての人間可読な説明を記述するために使用することができます。 同じ目的で [CODE(XMLa)[[VAR[xlink:]]title]] 属性が用意されていますが、 そちらは属性であるためにそれ以上の[[マーク付け]]ができません。 マーク付けが必要な場合には要素を使うことができます。 (ただし、 [CODE(XML)[[[resource]]]] 型要素や [CODE(XML)[[[simple]]]] 型要素では属性しか使えないので注意。) [CODE(XML)[title]] 型要素は [CODE(XML)[[[extended]]]] 型要素、 [CODE(XML)[[[arc]]]] 型要素、 [CODE(XML)[[[locator]]]] 型要素のいずれかの直接の[[子要素]]でないといけません。 それ以外の文脈での意味は XLink では規定されていません。 [CODE(XML)[title]] 型要素の[[内容]]は、 XLink 的には不透明であり、好きなものを入れて'''構いません'''。 [[#comment]] * xlink:title 属性 (XLink) [28] [[XLink]] の [DFN[[CODE(XMLa)[[VAR[xlink:]]title]] 属性]]は、 [[連結]]や[[資源]]や[[弧]]についての人間可読な説明を記述するために使用します。 この属性は、要素型 [CODE(XML)[[[simple]]]], [CODE(XML)[[[extended]]]], [CODE(XML)[[[locator]]]], [CODE(XML)[[[resource]]]], [CODE(XML)[[[arc]]]] の要素で使用できます。 この属性は省略可能です。 仕様書: [29] - この属性の値は資源を説明する文字列を含む'''べきです'''。 - この情報の使い方は連結に行う処理の型に強く依存します。 - 使用例: -- 視覚障害者用応用に利用可能にする -- 連結の表を作る -- [[開始資源]]の [CODE[[[onmouseover]]]] で [[tooltip]] 表示して補助とする [[#comment]] * メモ