SimpleIsm

Re: dl要素の仕様についての疑問

HTML

で、これはできればこんな感じにしてほしかったという希望。

<!ELEMENT dl (di)+>
<!ELEMENT di (dt&dd)+>

di(Definition Item)という要素でグルーピングできるようにして、その要素にはdlとddがどちらも最低一つ以上ふくまれていなければならない。みたいな。

つまりさっきのソースはこんな感じなります。

<dl>
    <di>
        <dt>項目1</dt>
        <dd>項目1の説明</dd>
    </di>
    <di>
        <dd>項目2の説明</dd>
        <dd>項目2の説明</dd>
        <dt>項目2</dd>
    </di>
</dl>

外村さんも「こういう書き方もできる」ってことで書いているのだろうけど、そもそも定義が先に来て用語が後に来るリストってあるの?倒置法的な?まぁでも、ないと仮定して<!ELEMENT dl (dt, dd)+>だったとすると、dtの次にdtが書けないし、<!ELEMENT dl (dt|dd)+>はそういったのを考慮しているんだろう。

本題で、新しくdi要素でdtとddをグルーピングするのって、別にdiv要素でもいいんじゃないかと思ったんだけど、よくよく考えてみるとdiv要素入れるの許可したら、他の要素も入れられちゃうしアカンってことで自己解決。なのだけど、dl要素でグルーピングされてるのじゃ不便なのかな。上記のリストだったら

<dl>
    <dt>項目1</dt>
    <dd>項目1の説明</dd>
</dl>
<dl>
     <dd>項目2の説明</dd>
     <dd>項目2の説明</dd>
     <dt>項目2</dd>
</dl>

のような感じで。こっちの方が行数も少ないしスマートだと思うんだけど。で、DTDが<!ELEMENT dl (dt&dd)+>だったらOKなんじゃないかな。

2009/02/01(Sun) 07:42
<<前の記事
雑記その63
次の記事>>
雑記その64

Category

Archives