#?SuikaWiki/0.9
* dl 要素型 (HTML, XHTML 1)
[6] [DFN[[CODE(HTMLe)[dl]] 要素型]]の [Q[dl]]
は、 [Q[definition list]] (定義並び) の略です。
[CODE(HTMLe)[dl]] は、用語 ([CODE(HTMLe)[[[dt]]]])
と説明 ([CODE(HTMLe)[[[dd]]]]) で構成します。
仕様書: [HTML 4] ,
,
[5]
:[[開始タグ]]:必須
:[[終了タグ]]: 必須
:[[内容模型]]:[CODE(SGML)[([CODE(HTMLe)[[[dt]]]] | [CODE(HTMLe)[[[dd]]]])+]]
:出現できる文脈:[CODE(SGML)[%[[list]]]] な文脈
:[[属性]]:
,[CODE(HTMLa)[[[class]]]] , , ,[[級]] ,[HTML4] %[[coreattr]]
,[CODE(HTMLa)[[[compact]]]],([[真偽値属性]]),([[偽]]),コンパクト表示,[HTML4] 非推奨
,[CODE(HTMLa)[[[dir]]]] , , ,[[書字方向]] ,[HTML4] %[[i18n]]
,[CODE(HTMLa)[[[id]]]] , , ,一意識別子 ,[HTML4] %coreattr
,[CODE(HTMLa)[[[lang]]]] , , ,[[自然言語]] ,[HTML4] %i18n
,[CODE(HTMLa)[[[xml]]:lang]] , , ,自然言語 ,[XHTML1]
,[CODE(HTMLa)[[[onclick]]]] , , , ,[HTML4] %[[events]]
,[CODE(HTMLa)[[[ondblclick]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onkeydown]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onkeypress]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onkeyup]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onmousedown]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onmousemove]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onmouseout]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onmouseover]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onmouseup]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[style]]]] , , ,スタイル情報 ,[HTML4] %coreattr
,[CODE(HTMLa)[[[title]]]] , , ,注釈的題 ,[HTML4] %coreattr
[[#comment]]
** dl によりマークされるもの
[7] HTML 4 仕様書は、 [CODE(HTMLe)[dl]] について、次のように説明しています。
>Definition lists, created using the [CODE(HTMLe)[DL]] element, generally consist of a series of term/definition pairs (although definition lists may have other applications).
> [CODE(HTMLe)[dl]] 要素を使って作成する定義並びは、
通常用語・定義の組の系列から成ります
(が、定義並びは他の応用も持つかもしれません)。
その上で、 >>8-9 のような、厳密にいえば定義とは言えないような例を挙げています。
[[#comment]]
** レンダリング
[11] HTML 4 仕様書は、レンダリングは UA 依存としています。
ただし、 >>10 のようなレンダリング例を挙げています。
多くの視覚的 UA は ([CODE(HTMLa)[[[compact]]]] 属性がなければ)
実際そのようにレンダリングします。
[CODE(HTMLa)[compact]] 属性に対応した UA は、
[CODE(HTMLe)[dt]] と [CODE(HTMLe)[dd]]
がそれぞれ別の行のこまとなる表のように表示するのが普通です。
([SAMP(CSS)[[[display]]: [[run-in]]]] と言った方が正確か。
もっとも、 HTML 4 は [CODE(HTMLa)[compact]] 属性の具体的効果にも言及してはいませんが、このように表現されるのが本来の [CODE(HTMLa)[compact]]
属性の意図です。)
[[#comment]]
** 使用例
[10]
[PRE(HTML)[
- Dweeb
- young excitable person who may mature
into a Nerd or Geek
- Hacker
- a clever programmer
- Nerd
- technically bright but socially inept person
]PRE]
(HTML 4 仕様書から)
レンダリング例:
[PRE[
Dweeb
young excitable person who may mature into a Nerd or Geek
Hacker
a clever programmer
Nerd
technically bright but socially inept person
]PRE]
[8] 厳密には定義とは言えない例:
[PRE(HTML)[
- Lower cost
- The new version of this product costs significantly less than the
previous one!
- Easier to use
- We've changed the product so that it's much easier to use!
- Safe for kids
- You can leave your kids alone in a room with this product and
they won't get hurt (not a guarantee).
]PRE]
(HTML 4 仕様書より)
[9] 他の並びと組合せた例:
[PRE(HTML)[
- The ingredients:
-
- 100 g. flour
- 10 g. sugar
- 1 cup water
- 2 eggs
- salt, pepper
- The procedure:
-
- Mix dry ingredients thoroughly.
- Pour in wet ingredients.
- Mix for 10 minutes.
- Bake for one hour at 300 degrees.
- Notes:
- The recipe may be improved by adding raisins.
]PRE]
[[#comment]]
** メモ
- [1] ''Strict-HTML スレッド ver.9'' [CODE(HTML)[dl]] 要素の使い方って [[FAQ]] だよなぁ。
- [2] >>1 そういえば Strict HTML FAQs ってないのかなぁ。結構な量あるとおもうんだけどな
- [3] [CODE(HTML)[dl]] 要素は、特別の場合には [CODE(HTML)[[[table]]]] 要素と交換可能です。
- [4] ''www-html@w3.org from July 1997: Definition lists'' : [[HTML 4]] 制定に当たって、 [CODE(HTML)[DL]] 要素の[[内容モデル]]に疑問を投げかけてみるテスト
[[#comment]]
* メモ