[whatwg] Suggest making <dt> and <dd> valid in <ol>
Leif Halvard Silli
xn--mlform-iua at xn--mlform-iua.no
Tue Jul 31 09:56:56 PDT 2012
Ian Yang on Thu, 19 Jul 2012 15:04:48 +0800, wrote:
>> From previous discussions, some people had suggested possible markup for
>> "life cycle" type contents. And personally I will stick to using <dl> until
>> there is a better solution.
>
> There is still one thing left unanswered. And that's whether we will be
> able to put <li> inside <dl>.
>
> Let's consider <form> we used often. When coding a form, none of us make it
> like the following one because that's obviously very ugly and, most
> importantly, it hurts our eyes!
>
> <form method="post" action="/">
> <label for="name">Name</label>
> <input id="name" type="text">
[...]
> Instead, we use <div> (some people use <p>) to group sub elements
[...]
> <form method="post" action="/">
> <div>
> <label for="name">Name</label>
> <input id="name" type="text">
> </div>
Would it not be better if, rather than <div>, you used <fieldset>? Then
it would not only benefit your eyes but also the semantics:
<fieldset>
<label for="name">Name</label>
<input id="name" type="text">
</fieldset>
There is even the option that you wrap the <label> around the input -
then you can drop the @id too - and be semantic as well:
<label>Name
<input type="text">
</label>
This way you can 'increase' both the semantics and the 'eye wellness'.
> Like above examples, the following <dl> is not well organized, and it's
> also a pain to read it:
>
> <dl>
> <dt>Lorem Ipsum</dt>
> <dd>Sit amet, consectetur adipiscing elit.</dd>
> <dt>Aliquam Viverra</dt>
> <dd>Fringilla
[... etc ...]
> </dl>
>
> If developers could, *optionally*, use <li> to wrap each group, the code
> would be more organized:
>
> <dl>
> <li>
> <dt>Lorem Ipsum</dt>
> <dd>Sit amet, consectetur adipiscing elit.</dd>
> </li>
> <li>
> <dt>Aliquam Viverra</dt>
> <dd>Fringilla nulla nunc enim nibh, commodo sed cursus in.</dd>
> </li>
[...]
> </dl>
>
> And usually "life cycle" type contents are presented as circles. Without
> <li>(s), it will be hard to style them.
How about the following method - essentially a variant of
<ol><li><dfn>Egg</dfn>: A white egg. [etc]</ol>, as proposed by by Ian:
<ol><li><figure><figcaption>Lorem Ipsum</figcaption>
Sit amet, consectetur adipiscing elit.
</figure></li>
<li><figure><figcaption>Aliquam Viverra</figcaption>
Fringilla nulla nunc enim nibh, commodo
sed cursus in.</figure></li></ol>
Or, if one wishes, one could drop the <ol><li>…</li></ol> completely
and instead e.g. do the following:
<style>figure figure{display:list-item}</style></head><body>
<figure>
<figure>
<figcaption>Lorem Ipsum</figcaption>
Sit amet, consectetur adipiscing elit.
</figure>
<figure>
<figcaption>Aliquam Viverra</figcaption>
Fringilla nulla nunc enim nibh, commodo
sed cursus in.
</figure>
</figure>
> Since the *optional *use of <li> in <dl> could solve many problems, may we
> have <li> being valid in <dl>?
The most serious problem with that proposal seems to me to be that the
<li> only have styling functionality. I think one would have to define
it as a new list type, where <li> has semantic meaning, and then it
could perhaps work.
--
Leif Halvard Silli
More information about the whatwg
mailing list