]]。
ただし、 [CODE[*]] をつけた要素にしか言及されていません。
残りの移行用要素型はどうでもいいってことですか。
(XHTML 1.0 にも Transitional DTD はあるのにねぇ。)
[5] >>4 の目的の達成のためには、 >>3 の bidi
についての規定が邪魔に思えるのですけどねぇ。
[13] [CODE(HTMLe)[pre]] の内容には各種の[[行内要素]]が使えますが、
UA の性能によっては、正しくレンダリングされないことがあります。
[SRC[RFC 1866 5.5.2.]]
太字でレンダリングした部分で文字幅の計算がずれてまわりと字が重なるとか、
そんなような状況を想定しているのだと思われます。
[[#comment]]
** レンダリング
[3] HTML 4 によれば、
- 視覚 UA は、
-- [[空白]]に手をつけなくてよい (may)
-- [[固定幅]]フォントで文をレンダリングしてもよい (may)
-- 自動語折り返し (word wrap) を無効化してもよい (may)
-- [[bidi]] 処理を無効化してはならない (must not)
- 非視覚 UA は、余分な空白を尊重する必要はない (not required)
[6] >>4 の除外要素があるのは、
固定幅フォントで表示したときに行の高さや文字の幅が一定になるようにするためです。
この動作を著者が[[スタイルシート]]で変えてしまうことは非推奨 (discourage)
です。
[10] RFC 1866 では、 [CODE(HTMLe)[pre]] 要素は固定幅フォントで整形された文章に適当な要素型であると紹介していました。 RFC 1866 には明記こそされていませんが、
固定幅フォントでの表示が適当であると言っていることは自明です。
[11] UA は [CODE(HTMLa)[[[width]]]] 属性値を参考にして適当な文字の大きさと字下げの量を決めることができます。
[SRC[RFC 1866 5.5.2.]]
幅が広ければ左余白を削減するようなことを想定しているようです。
[[#comment]]
*** 改行
[12] [CODE(HTMLe)[pre]] 内では、改行を改行 (次の行の先頭への移動)
として扱います。 (表示領域の先頭ではなく、
余白を考慮した行の先頭です。) [SRC[RFC 1866 5.5.2.]]
[14] 古い文書は [CODE(HTMLe)[pre]] の中で [CODE(HTMLe)[[[p]]]]
タグを使っています。 UA
はこれを改行と同じように扱うことが[RUBYB[推奨][encourage]]されていました。
ただし、 [CODE(HTMLe)[p]] の後に改行が続く時には、
まとめて一つ分の改行とみなすべきとされていました。
[SRC[RFC 1866 5.5.2.]]
[[#comment]]
*** 水平タブ
[8] [[水平タブ]]文字 ([CODE(char)[0/9]], [CODE(char)[HORIZONTAL TAB]],
[CODE(char)[[[HTAB]]]]) を [CODE(HTMLe)[pre]]
内で使用することは避けるべきとされています。
HTML 2.0 (RFC 1866) では[Q[含める[RUBYB[べきではない][should not]]]]、
HTML 4 では[Q[[RUBYB[強く非推奨][strongly discouraged]]]]、
[[ISO-HTML]] では使用不能 (強制的に [CODE(char)[[[SP]]]]
に変換) と、時代が下るにつれ強い表現になっています。
UA はタブを8の倍数の[[文字位置]]までの分の間隔として解釈しなければなりません。
しかし実装は一貫していません。 [SRC[RFC 1866 5.5.2.]]
多くの視覚 UA は、8文字を一タブ幅としています。
ところが、 [[editor]] でタブ幅を好きな幅にすることはよく行われています。
だから、変てこな文書を作ってしまうことになります。 [SRC[HTML 4]]
[9] 多くのブラウザが8タブを採用しているのは事実で、
ブラウザに限らずとも8文字が優勢ですが、そうでなかったり、
設定で変えられる処理系も多々あります。
水平タブ文字は、数ある [[C0]] 制御文字のうちでは、文字自体はかなり安全に
(ほとんど必ず) 伝達してもらえるわずかな文字の一つではありますが、
意図した通りに表示してもらえる確率はかなり低くなりますから、
この判断は妥当だと思います。
[[#comment]]
** 例
[15] 整形済み文の例 [SRC[RFC 1866 5.5.2.]]
[PRE(HTML)[
Line 1.
Line 2 is to the right of line 1. abc
Line 3 aligns with line 2. def
]PRE]
[7] Shelly の[[詩]]『To a Skylark』 [SRC[HTML 4]]
[PRE(HTML)[
Higher still and higher
From the earth thou springest
Like a cloud of fire;
The blue deep thou wingest,
And singing still dost soar, and soaring ever singest.
]PRE]
レンダリング例:
[PRE[
Higher still and higher
From the earth thou springest
Like a cloud of fire;
The blue deep thou wingest,
And singing still dost soar, and soaring ever singest.
]PRE]
[[#comment]]
** メモ
[[#comment]]
* メモ