HTML5有很好的描述标记。w3.org给出下面的示例
<dl>
<dt><dfn>happiness</dfn></dt>
<dd class="pronunciation">/'hæ p. nes/</dd>
<dd class="part-of-speech"><i><abbr>n.</abbr></i></dd>
<dd>The state of being happy.</dd>
<dd>Good fortune; success. <q>Oh <b>happiness</b>! It worked!</q></dd>
<dt><dfn>rejoice</dfn></dt>
<dd class="pronunciation">/ri jois'/</dd>
<dd><i class="part-of-speech"><abbr>v.intr.</abbr></i> To be delighted oneself.</dd>
<dd><i class="part-of-speech"><abbr>v.tr.</abbr></i> To cause one to be delighted.</dd>
</dl>
描述<dd>
元素可以用作“dt
或dl
元素中的dd
元素之后”的上下文。
这让我(一个完全的初学者)觉得很奇怪:这些dd
元素是不是应该属于他们所描述的dt
呢?因为<dt>happiness</dt>
和<dd> The state of being happy</dd>
绝对是相互关联的,它们互相描述吗?使用不带结构的dt
和dd
对齐,判断特定dd
描述什么的唯一方法是找到最后一个dt
。我会觉得更安全的东西,如(di
对每一项)
<dl>
<di>
<dt><dfn>hapiness</dfn></dt>
<dd class="pronunciation">/'hæ p. nes/</dd>
<dd>The state of being happy</dd>
</di>
</dl>
虽然我很想问“我担心这件事对吗?”,但我的问题是:
dl
中使用html5时,有哪些约定?他们是以某种方式对<dt>
和<dd>
进行分组,还是仅仅是好呢?发布于 2014-10-20 06:26:05
据我所知,<dd>
是它前面的<dt>
的定义。从技术上讲,每个<dt>
不会有一个以上的<dt>
。做这样的事:
<dl>
<dt>happiness</dt>
<dd>
<span class="pronunciation">/'hæ p. nes/</span>
<span class="definition">The state of being happy</span>
</dd>
</dl>
然后按照不同的方式设计跨度。
编辑:
我很抱歉,正如大卫·托马斯( David )所指出的那样,每个<dt>
(<dt>
,http://html5doctor.com/the-dl-element)拥有一个以上的http://html5doctor.com/the-dl-element是可以的。我认为我在这里的主要想法是,我仍然认为如果<dd>
像上面那样被分成几个部分的话,它会更整洁,更容易风格。
发布于 2014-10-20 11:20:04
dl
元素从早期(从HTML2.0正式开始)就一直是HTML的一部分,而且定义一直很模糊。名义上被称为“定义列表”,通常被解释为“描述列表”或实际上只是“关联列表”。它将dt
元素中的“名称”与它之后的dd
元素的内容关联起来,直到下一个dt
。如果有几个连续的dt
元素,它们都与下面的dd
元素相关联。
关联(分组)是在dl
中定义的,但它是“纯语义的”;它本身没有任何含义,甚至不能使用某些中间标记使其显式化,因为dl
语法只允许作为子级的dt
和dd
(和script
,但这没有帮助)。
结论取决于你所期望的关联将被用于什么。如果您确实需要一个组的容器,只需使用其他一些标记就可以将所需的标记放入其中。如果您希望关联与辅助软件相关,可以考虑使用ARIA属性,如ARIA上的MDN页面:上的下面示例所建议的那样
<dl>
<dt id="anathema">anthema</dt>
<dd role="definition" aria-labelledby="anathema">a ban or curse solemnly pronounced
by ecclesiastical authority
and accompanied by excommunication</dd>
<dd role="definition" aria-labelledby="anathema">a vigorous denunciation : cursor</dd>
<dt id="homily">homily</dt>
<dd role="definition" aria-labelledby="homily">a usually short sermon</dd>
<dd role="definition" aria-labelledby="homily">a lecture or discourse on or of a moral theme</dd>
</dl>
然而,这种添加标记的实际用途很小。大多数软件都忽略了它。此外,如果列表写得很好,“名称”和“值”之间的关联在没有这种标记的情况下就足够明显了。
https://stackoverflow.com/questions/26458958
复制相似问题