2004-01-03 14:38 更新
多くのウェブブラウザは、HTML の title 属性の内容をツールチップとして表示する。内容が長い場合は適当に改行して表示することもある。では、任意の位置に改行を入れることはできないのだろうか?
title="1行目 2行目"
実は、これで Windows IE はツールチップ内で改行してくれる。つまり、改行コードを空白扱いせず、改行として扱ってくれるのだ。しかし、妙な位置で改行すると、可読性が落ちるし、気持ち悪い。もうちょっとマシな方法はないものだろうか。
Windows での改行コードは CR+LF で、10 進表記コード番号は CR が 13 、LF が 10 だ。そこで、先程の例を次のように書き換えてみる。なお、 は数値文字参照で、先程の改行コードの番号に対応している。
title="1行目 2行目"
これでも OK らしい。
title 属性の内容は CDATA であり、UA は次のように解釈すべしとなっている。
よって、 の正しい解釈はこうなる。
つまり、次のように書いたのと同じ事になる。
title="1行目 2行目"
これが改行されるわけないよね。他のブラウザでは改行されないと思っておいた方が良い。