l

l 要素 (HTML)

[1] XHTML2l 要素 (当初は line 要素) は、 HTML4br に代わり文書中の「」を表すものとして提案されていました。

歴史

[2] line 要素mimasa 氏により追加が検討されている要素として事前にリークされていましたが、 正式には 2002年8月の最初の XHTML2 作業原案によって公表されました。

[3] br 要素非推奨ながら残されていました。

[6] 2つ目の作業原案では l 要素に改名されましたが、 なぜか規定が削除されていました。 br 要素も削除されました。

[7] 3つ目の作業原案で定義が復活しました。

[4] l 要素に対しては、従来 br 要素pre 要素で表していたプログラミング言語をより“意味的” に記述できると評価する声がある一方で、「」という概念自体が物理的であって XHTML には相応しくないとする批判もありました。

[5] 末期の XHTML2 WG では l 要素を廃して br 要素に戻すべきとの意見もありました [要出典]。

[8] XHTML2 の失敗で l 要素も消滅しました。

[9] section 要素のように XHTML2 の有用なアイデアは HTML5 に取り込まれましたが、 l 要素を推す声はほとんどありませんでした。

[10] 平成10年代前半頃には、欧米でも日本でも、 br 式の空要素より、 l 式の子供を持つ要素の方が優れているとの考え方がありました。 その背景には CSSDOM で 「要素要素の間」 よりも 「要素とその内容」 の方が扱いやすいことがあったのでしょう。 p 要素お尻pから子供を持つようになり、 hn の暗示的区切りより section が望まれ hr が敬遠されるといった、 言語全体の方向性もありました。

[13] HTML4 StrictXHTML 1.1 の流れをついで物理要素の排除を目指した XHTML2 にとっては、 物理要素と疑われがちだった br を放置するわけにもいきませんでした。

[11] しかしあらゆるl に入れさせるのは現実的でなく、 明示的な l とそうでない暗示的な行の混在が前提とならざるを得ません (XHTML2 はそれを明確に規定していませんでしたが)。 文書の作成を考えると brpre の従来方式の方が楽です。 CSSDOM の扱いも、 混在を前提にすると l を追加したことにより複雑になるだけです。 (一般性が求められず自分の作ったページだけで通用すればいいスクリプトなら、 対象を span で適宜マーク付けすればよく、専用の要素は不要です。)

[12] むしろ、「行」という表示に密接に関係する要素を新たに追加しても、 表示調整目的で濫用されるであろうことは HTML の歴史から明らかです。 実用性に疑問があり、 言語の意味的な整合性も危うくするようなものを、 敢えて追加する意義は少ないでしょう。