我想制作一个有序的定义列表。我应该在<ol>
中嵌套<dl>
,还是反过来?
即
<h4>Bike Descriptions</h4>
<dl>
<ol>
<li>
<dt>Giant Bikes</dt>
<dd>Bikes that are very sturdy and reliable.</dd>
</li>
<li>
<dt>Walmart Bikes</dt>
<dd>Bikes that are crummy and heavy.</dd>
</li>
</ol>
</dl>
或将<dl>
嵌套在<ol>
内,甚至嵌入每个<li>
内?
答案 0 :(得分:2)
您的示例不是有效的HTML标记。也许你想做这样的事情。
<h4>Bike Descriptions</h4>
<ul>
<li>
<dl>
<dt>Giant Bikes</dt>
<dd>Bikes that are very sturdy and reliable.</dd>
</dl>
</li>
<li>
<dl>
<dt>Walmart Bikes</dt>
<dd>Bikes that are crummy and heavy.</dd>
</dl>
</li>
</ul>
然后,您可以为CSS添加样式以修复布局。
答案 1 :(得分:2)
根据that documentation,<dt>
可能包含的唯一元素是<dd>
和dl
:
的 Content model 强>零个或多个组,每个组由一个或多个
dt
元素组成,后跟一个或多个dd
元素,可选择与script-supporting elements混合。
因此,您的示例代码是无效的HTML。嵌套ol
和ul
/ ol
的唯一有效方法是ul
/ li
&gt; dl
&gt; dt
&gt; dd
+ <h4>Bike Descriptions</h4>
<ol>
<li>
<dl>
<dt>Giant Bikes</dt>
<dd>Bikes that are very sturdy and reliable.</dd>
</dl>
</li>
<li>
<dl>
<dt>Walmart Bikes</dt>
<dd>Bikes that are crummy and heavy.</dd>
</dl>
</li>
</ol>
:
private ImageLoader imageLoader1;
&#13;
答案 2 :(得分:0)
我认为 HTML 没有用于有序定义列表的元素。
您可能会考虑只使用一个 dl
元素,然后按照您想要的方式对其名称-值组进行排序。 (例如,字典中的单词通常没有编号,只是按字母顺序排列。)
如果您真的认为您必须对 dl
元素的每个名称-值组进行编号,那么我想我可能不同意您的观点并请求您重新考虑,因为我想不出任何示例我认为这样做是一种很好的风格。如果可以,请随意分享。但我倾向于keep it simple, stupid (KISS);我认为少即是多;可能还有you aren't gonna need it (YAGNI)。但是,如果(即使经过重新考虑)您仍然想这样做,那么您可以考虑using CSS counters。
根据WHATWG: HTML Standard: The dl
element:
组列表的顺序以及每个组内的名称和值的顺序可能很重要。
为了注释具有 microdata 属性的组,或适用于整个组的其他 global attributes,或仅用于样式目的,dl
元素中的每个组可以包含在div
元素。这不会改变 dl
元素的语义。