我可以在DL/DT/DD中放置任何东西吗?

Ale*_*lex 20 html html-lists

我可以像无序/有序列表一样使用定义列表吗?

我的意思是在DT或DD中插入任何我想要的东西?

<dl>
  <dt>
    ...
  </dt>
  <dd>
    ...
  </dd>
</dl>
Run Code Online (Sandbox Code Playgroud)

是否有任何浏览器或搜索引擎抱怨?

Tow*_*own 22

根据评论更新了答案:

这最初是在2011年针对HTML 4回答的,但HTML5的答案有所不同:

dt 流内容,但没有页眉,页脚,节内容或标题内容后代. dd 流量内容.

原始答案:

DT元素应包含内联内容.
DD元素应包含块级内容.

定义列表与其他类型的列表略有不同,列表项由两部分组成:术语和描述.该术语由DT元素给出,仅限于内联内容.使用包含块级内容的DD元素给出描述.

资料来源: W3C

这个问题也是一个有趣的读物:为什么要使用HTML表单的定义列表(DL,DD,DT)标签而不是表格?

  • 答案无效,因为根据http://www.w3.org/TR/html5/grouping-content.html#the-dt-element,您可以在<dt>和<dd>元素中包含流内容 (8认同)

Arj*_*jan 10

在里面DL你只能放DTDD标签.一个DT标签是一个内嵌标签,所以你不应该把块元素在里面.一个DD标签基本上可以包含任何你想要的,这是一个流动的内容标签.


Smi*_*hee 6

截至 2017 年 12 月,根据 HTML 5.2 规范,您现在可以在标签<div>内添加单个嵌套标签<dl>,我假设是出于样式目的:

https://www.w3.org/TR/html52/grouping-content.html#the-dl-element

内容模型:

任一:零个或多个组,每个组由一个或多个 dt 元素后跟一个或多个 dd 元素组成,可以选择与脚本支持元素混合。

或者:一个或多个 div 元素,可以选择与脚本支持元素混合。