transparent content model

透過内容 (HTML)

[2] 透過内容 (transparent content) は、その要素が無かったとして、 親要素に直接子供が含まれていたとした時に適合する内容であれば良い、 という内容モデルです。

仕様書

定義

[6] 透過要素内容モデルは、その親要素内容モデルによります。 内容モデルの中で「透過」である部分になければならない要素は、 透過要素内容モデルにおいて透過要素自体が存在する部分になければならない要素と同じです。 >>5

[7] 透過要素を持たない場合、「透過」である部分は任意の流れ内容を認めているとして扱わなければなりません>>5

[3] 透過内容とは別に特定の内容を認めた内容モデル半透過内容といいます。


[23] 「透過」 (透明) というのは内容モデル、つまり要素の構造に関して「透過」 であるに過ぎず、要素の意味とは無関係です。 透過内容半透過内容内容モデルとしているからといって、 その要素自体を無視できるわけではありません。

[24] 例えば video 要素半透過内容を持ちますが、 だからといって要素を適当に除去していいわけでもなんでもなく、 動画の埋め込みという明確な意味を持って存在しています。

透過内容を持つ要素

[19] 透過内容半透過内容内容モデル要素には、次のものがあります。

[17] 廃止された要素なので WA1 には含まれていませんが、 applet半透過内容と解釈するのが適切でしょう。

[18] font も以前は透過内容として定義されていましたが、 要素ごと廃止されています。

[20] この一覧は <https://raw.github.com/manakai/data-web-defs/master/data/elements.json> の各要素の「transparent」欄に機械可読な形で含まれています。

歴史

HTML5

[22] 透過内容HTML5 で導入されました。

[1] Web Applications 1.0 r5732 Rewrite the rules for 'transparent' so that you can't put a <param> in an <ins> in an <object> (or similar things). ( ( 版)) <http://html5.org/tools/web-apps-tracker?from=5731&to=5732>

[21] 27445 – Suggestion for a Simpler Description of Transparent Elements ( 版) <https://www.w3.org/Bugs/Public/show_bug.cgi?id=27445>