* meta 要素 content 属性 (HTML, XHTML 1)
[1] [[HTML]] の [CODE(HTMLe)[[[meta]]]] 要素の
[DFN[[CODE(HTMLa)[content]] 属性]]は、
メタ情報の値を指定します。
[2] 仕様書:
- [[HTML 2.0]]: [[RFC 1866]] 5.2.5. Associated Meta-information: META
[[#comment]]
** 属性値
[3] この属性は必須で、省略できません。
空の値を指定したい時は、 [SAMP(HTTP)[content=""]]
のように記述しなければなりません。
** 歴史
[19] [[XHTML2]] の第6次案で [[RDFa]] の一部として[[大域属性]]となりました。
;; [CITE@en[- XHTML Metainformation Attributes Module]] ([TIME[2004-07-22 23:25:19 +09:00]] 版)
** 関連
[4]
HTML 4 DTD の[[注釈]] (参考) には、
[CODE(HTMLe)[[[meta]]]] 要素の
[CODE(HTMLa)[[[lang]]]] 属性と
[CODE(HTMLa)[[[dir]]]] 属性は
[CODE(HTMLa)[[[content]]]] 属性に適用されると書かれています。
([[名無しさん]] [sage])
[[#comment]]
* メモ
[5]
[CODE(CSS)@en[[[-moz-alt-content]]]]
([[名無しさん]] [sage])
[6]
[CITE@ja[プリント時にも役立っちゃうcontentプロパティさん|CSS HappyLife]] ([CODE[2007-05-11 20:06:40 +09:00]] 版)
([[名無しさん]] [WEAK[2007-05-11 11:08:15 +00:00]])
[7]
[CITE[HTML5 IRC logs: freenode / #whatwg / 20070624]] ([CODE[2007-06-25 08:45:09 +09:00]] 版)
([[名無しさん]] [WEAK[2007-06-24 23:47:02 +00:00]])
[8]
[CITE@en[Bug 130689 - CSS 3 replaced content breaks some pages]] ([CODE[2007-10-21 15:00:17 +09:00]] 版)
([[名無しさん]])
[9]
[CITE@en[Bug 130689 - CSS 3 replaced content breaks some pages]] ([CODE[2007-10-21 15:00:17 +09:00]] 版)
([[名無しさん]])
[10]
[[Firefox]] 2 [[構文解析]]
- 基本的に [[CSS 2.1]] 通りのようです。
- [CODE(CSS)@en[[[none]]]]、[CODE(CSS)@en[[[-moz-alt-content]]]]
には未対応です。
- [CODE(CSS)@en[[[attr]]()]] の[[引数]]に [CODE(CSS)[[[|]]]]
を用いることで、[[名前空間]]を使うことができます ([[CSS 3]])。
([[名無しさん]])
[11]
[[Opera]] 9 [[構文解析]]
- 基本的に [[CSS 2.1]] 通りのようです。
- [CODE(CSS)@en[[[none]]]] には未対応です。
- [[名前空間]]には未対応です。
- [CODE(CSS)@en[[[counter]]()]] や [CODE(CSS)@en[[[counters]]()]]
の最後の[[引数]] ([CODE(CSS)@en[<'[[list-style-type]]'>]])
は、 [CODE(CSS)@en[[[IDENT]]]] でさえあれば何でもいいようです。
([[名無しさん]])
[12]
[[Firefox]] 2 [[直列化]]
- 他の[[特性]]でなされるような[[正規化]]
([[escape]] 除去など) が基本的に適用されます。
-- [[引数]]の区切りは [CODE(CSS)@en[[[,]]]] の後に
[CODE(charname)@en[[[SPACE]]]] になります。
- [CODE(CSS)@en[[[counters]]()]] の第2[[引数]]
([CODE(CSS)@en[<[[string]]>]]) は、なぜか
[CODE(CSS)@en[[[IDENT]]]] であるかのように
(つまり[[引用符]]なしで) [[直列化]]されます。
- [CODE(CSS)@en[[[counter]]()]] や
[CODE(CSS)@en[[[counters]]()]] の最後の[[引数]]
([CODE(CSS)@en[<'[[list-style-type]]'>]]) が省略されていると、
[[既定値]] [CODE(CSS)@en[[[decimal]]]] が補われます。
- [CODE(CSS)@en[[[attr]]()]] 内に [CODE(CSS)[[[|]]]] があって、
その前が[[空文字列]]の場合、 [CODE(CSS)[[[|]]]] は除去されます。
- [CODE(CSS)@en[[[attr]]()]] 内に非[[空]]の[[名前空間接頭辞]]がある場合、
なぜか代わりに[[整数]] ([[0]] 以上) が出てきます。
どうやら、[[名前空間URI]] によって定まる、
内部的に[[名前空間]]情報を保持している[[配列]]の[[索引]]か何かのようです。
- なお、 [CODE(CSS)@en[[[counter]]()]] や
[CODE(CSS)@en[[[counters]]()]] の第1[[引数]]の[[大文字]]・[[小文字]]は[[正規化]]されません。
([[名無しさん]])
[13]
>>12
- [[HTML]] [[文書]]の場合、 [CODE(CSS)@en[[[attr]]()]] の中の[[局所名]]は
([[名前空間]]に関わらず) [[Unicode]] [[小文字]]に[[正規化]]されます。
- [[XML]] [[文書]]の場合、そのままです。
([[名無しさん]])
[14]
[[Opera]] 9 [[直列化]]
- 他の[[特性]]でなされるような[[正規化]]
(例えば [[escape]] の除去や[[相対参照]]の[[解決]])
が基本的になされます。
- [CODE(CSS)@en[[[attr]]()]] の[[引数]]の特別な[[正規化]]はないようです。
- [CODE(CSS)@en[[[counter]]()]] や [CODE(CSS)@en[[[counters]]()]]
はおかしいです。
== 最初と最後の[[空白]]や[[注釈]]は除去します。
== [[escape]] はすべて除去 (表す[[文字]]に置換) します。
== [CODE(CSS)[[["]]]] を [CODE(CSS)[[[\]][["]]]] に置換します。
== 残った文字列を [CODE(CSS)[[["]]]] で括ります。
-- というわけで、途中の[[空白]]や[[注釈]]は除去されません。
[CODE(CSS)@en[[[STRING]]]] の[[引用符]]は統一されません。
[CODE(CSS)[[[\]]]] も [[escape]] されません。
なぜか全体が [CODE(CSS)[[["]]]] で囲まれます。
([[名無しさん]])
[15]
[CODE(DOMm)@en[[[getComputedStyle]]]] 確認用:
([[名無しさん]])
[16]
[[Firefox]] 2 では [CODE(DOMm)@en[[[getComputedStyle]]]]
上の値は常に[[空文字列]]のようです。
([[名無しさん]])
[17]
[[Opera]] 9 では、明示的に指定されなかったり
[CODE(CSS)@en[[[normal]]]] が指定されたりした[[要素]]や[[擬似要素]]では
[CODE(CSS)@en[[[none]]]]
(この値を直接指定することはできませんが・・・)、
それ以外は[[指定値]]になるようです。
[[URI]] は[[構文解析]]時に既に[[絶対URI]]に[[解決]]されています。
[CODE(CSS)@en[[[attr]]()]] は [[CSS 2.1]] の記述とは異なり、
そのまま残ります。
;; [[CSS 2.1]] とは異なり、[[擬似要素]]でなくても
[CODE(CSS)@en[[[normal]]]] は [CODE(CSS)@en[[[none]]]]
に置き換えられます。また、 [[CSS 3]] に従い、
普通の[[要素]]でも [CODE(CSS)@en[[[normal]]]]
以外の値がそのまま残ります。
([[名無しさん]])
[18]
[CODE(CSS)@en[[[counter]]()]] や
[CODE(CSS)@en[[[attr]]()]] の[[引数]]に
[CODE(CSS)@en[[[inherit]]]] があるときにおかしなことにならないものかと一応調べてみましたが、
[[Firefox]] 2、[[Opera]] 9 のどちらでも、特に変わったことはない (仕様通りの) ようです。
;;
([[名無しさん]])
[20] [CITE[User Interface Enhancements]]
( ([TIME[1999-09-16 05:07:02 +09:00]] 版))
[21] [CITE@en[User Interface for CSS3]]
( ([TIME[2000-06-23 03:09:21 +09:00]] 版))
[22] [CITE@en[CSS3 module: Basic User Interface]]
( ([[Tantek Çelik]] 著, [TIME[2002-08-03 07:13:43 +09:00]] 版))
[23] [CITE@en[CSS3 Basic User Interface Module]]
( ([[Tantek Çelik]] 著, [TIME[2004-05-12 02:17:47 +09:00]] 版))
[24] [CITE@en[CSS Basic User Interface Module Level 3 (CSS3 UI)]]
( ([[Tantek Çelik]] 著, [TIME[2011-09-29 17:32:08 +09:00]] 版))
[25] [CITE@en[CSS3 Generated and Replaced Content Module]]
( ([TIME[2003-05-15 21:54:58 +09:00]] 版))
[26] [CITE@en[CSS Generated Content Module Level 3]]
( ([TIME[2011-04-21 02:28:30 +09:00]] 版))
[27] [CITE[''''''[''''''whatwg'''''']'''''' "content" element, which we need in our documents]]
( ([TIME[2012-09-02 22:10:51 +09:00]] 版))
[28] [CITE@en[maincontent element]]
( ([TIME[2012-09-10 01:50:05 +09:00]] 版))
[29] [CITE[''''''[''''''whatwg'''''']'''''' Elements feedback]]
( ([TIME[2012-09-27 18:27:33 +09:00]] 版))
[30] [CITE[''''''[''''''whatwg'''''']'''''' maincontent element spec updated and supporting data provided]]
( ([TIME[2012-10-17 00:04:04 +09:00]] 版))