html - 强调句子或部分的正确 HTML 标签是什么?

标签 html semantic-markup

我意识到我在整个 HTML 中使用了 blockquote 来强调学生必须学习的段落 - 这显然是错误的,因为 blockquote 的目的是指定从其他来源引用的部分。

就我而言(数学),段落定义或描述一个单词,并且应该在视觉上脱颖而出。

经过一番研究,我发现了em tag它“标记具有重音强调的文本”,但是,它似乎是为单个单词或一组单词设计的,而不是为段落设计的。

所以问题是:强调完整句子或部分(几段)的正确的 HTML 标记是什么?

最佳答案

从语义上讲,如果您正在定义某些内容 - 并且适合您的文档结构 - 您应该查看 <dl> :定义列表。

MDN 有一个页面解释了您需要了解的内容:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dl

<dl>内,你有<dt> (定义术语)和 <dd> (定义描述)。 <dd>是 block 级的,因此可以包含 block 级元素,例如段落和列表,但是 <dt>是内联的并且应该只包含其他内联元素。如果您真的遵守规则:)

示例:

<dl>
  <dt>Stack Overflow</dt>
  <dd>
    A place that holds many answers, some of which are <em>mostly</em> correct.
  </dd>
</dl>

默认情况下,大多数浏览器都会对定义列表应用一些缩进,但这就是您在样式方面所能得到的全部内容。您需要应用自己的样式规则以使它们更加突出,但是作为定义列表的一部分获得的各种标签应该可以帮助您实现这一点。

围绕屏幕阅读器用户定义列表的可访问性进行了一些讨论,不同的浏览器和阅读器会产生不同的结果(请参阅 https://webaim.org/discussion/mail_thread?thread=7089 )。这不是最佳的,但似乎使用定义列表并不比使用无序列表( <ul> )差;这不是一个理想的解决方案(因为实际上并不存在),但也不是最糟糕的选择。

关于html - 强调句子或部分的正确 HTML 标签是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50096542/

相关文章:

html - 添加分号 CSS 会破坏代码

html - 在 div 元素中使用 span 元素可以吗?

css - 嵌套表 - 合法吗?

html - 在 HTML5 中表示空 TH 的最佳方式是什么?

javascript - Canvas 'drawImage' 返回 ' No function was found that matched the signature provided.'

javascript - jquery 数组不相等

html - 使用XPath从属性中选择URL

javascript - 将表单的文件输入字段的值复制到另一个表单的输入字段

html - HTML5 对语义标记和语义网技术提供了哪些支持?

html - 如何在语义上为 HTML 中的列表提供标题、标题或标签