信息框的HTML5语义元素



请帮助我为信息消息框找到正确的HTML5标记:

<div class="info-box">
<div class="info-box-icon">
<i class="fa fa-exclamation"></i>
</div>
<div class="info-box-message">
<p>In the case of questions or problems, please contact us at the email address <a href="mailto:my@adress.com">my@adsress.com</a></p>
</div>
</div>

我可以用这个例子吗?

<details class="info-box">
<div class="info-box-icon">
<i class="fa fa-exclamation"></i>
</div>
<summary="info-box-message">
<p>In the case of questions or problems, please contact us at the email address <a href="mailto:my@adress.com">my@adsress.com</a></p>
</summary>
</details>

HTML5中没有details元素(它是HTML5草案的一部分,但在HTML5作为推荐发布之前被删除)。

目前还没有一个通用的答案,即"信息框"应该使用哪个元素,因为还不清楚这样的信息框是什么,以及它在您的特定情况下在什么上下文中使用。

添加div元素似乎只是出于样式/脚本的原因,因此在决定使用哪个标记时可以忽略这些元素,因为它们毫无意义。

您似乎添加了用于显示图标的i元素,这是不合适的。如果必须为此添加一个空HTML元素(而不是使用CSS对应的现有元素),请使用span

因此,您的示例的语义标记可能是:

<p class="info-box">
In the case of questions or problems, please contact us at the email address <a href="mailto:my@example.com">my@example.com</a>
</p>

如果它是其部分标题的一部分,则将其放在header中;如果是其部分页脚的一部分,则将其放置在footer中;如果它与该部分的主要内容无关,则将其放在aside
如果它代表父article(如果有)或body的联系信息,则将其放置在address中(可能本身位于header/footer中)
否则,它只是本节主要内容的一部分。

最新更新