Re: [suggestion] Allow DIV inside any element

On 4/30/07, M. Jackson Wilkinson <jackw-w3c@jounce.net> suggested
using li inside dl:

> <dl>
>         <li>
>                 <dt>Item 1</dt>
>                 <dd>Item 1's associated content</dd>
>         </li>
>
> [ ... ]
>
> </dl>

Wonderful! I've often found myself wanting to group two or more
related dt and dd elements.

At first glance I really like the leveraging of li here. Sure, there's
the allure of "another CSS hook" but it also demarcs a group of
terms/definitions.

However ... :)

Consider this statement: "Any HTML4 document should render correctly
as an HTML5 document."

Fine. Let's try a quick acid test. From a DTD perspective (and I
realize there are strong POVs on the suitability of DTDs for
conformance checking, so bear with me), dt and dd would be permitted
in _any_ list that uses li. I suspect we don't want this:

<ul>
  <li>
     <dt></dt>
     <dd></dd>
  </li>
</ul>

Or this (?):

<ul>
   <dt></dt>
   <dd></dd>
  <li>
     <dt></dt>
     <dd></dd>
  </li>
</ul>

OK, how about _di_ as a definition item? Wait - scratch that - I sense
a slippery slope (dt becomes t, dd becomes d) and then we have the
potential for:

<ul>
   <dt></dt>
   <dd></dd>
  <di>
     <t></t>
     <d></d>
  </di>
</ul>

I am intrigued! I'm just not sure how to introduce it sanely,
especially if HTML5 is intended to be a superset of HTML, compatible
with previous iterations and/or existing web markup.

Put another way, the "definition list bed" has been made. Now we must
lie in it. Would be nice to freshen up the pillows though. Hmm ...

--
Joe D'Andrea
www.joesapt.net

Received on Friday, 4 May 2007 16:13:44 UTC