我有一个自动保存到服务器的页面(如果发生任何更改,会在计时器上)。我想添加一个小指示器,
它将显示或。Unsaved
Saved
Error
为此使用<output>
标签在语义上是否有效,还是应该使用<div>
?
我有一个自动保存到服务器的页面(如果发生任何更改,会在计时器上)。我想添加一个小指示器,
它将显示或。Unsaved
Saved
Error
为此使用<output>
标签在语义上是否有效,还是应该使用<div>
?
这是一个有趣的问题,尽管答案会有些主观。我会尝试给出我的结论和推理。
让我们从规范对<output>
元素的说明开始:
输出元素表示计算的结果。
真的,这没什么好说的。然而,假设它曾经说过:
输出元素表示进程运行的结果。
那么很明显,您的用例已包含在该定义中。所以关键问题就变成了:“计算”是否可以解释为“进程的运行”。在我看来,一个通情达理的人可以支持该论点的任何一方。
但是 HTML5 中的 HTML 元素语言只有大约 107 个单词。在这么小的空间里,没有任何意义的细微差别,每个单词都必须涵盖很多用法。为此,需要尽可能宽泛地解释每个元素的语义,而不是尽可能狭隘。在这种情况下,对我来说,“运行进程”与“计算”非常相似<output>
,即元素的使用适合您的用例。
另一个需要牢记的问题是“元素的使用是否会导致 HTML 消费者(例如用户代理和搜索引擎)出现不良行为?” 如果确实如此,那么这将是不使用它的明确理由。然而,<output>
它似乎是一个被动元素,不会导致任何可能不受欢迎的行为。
所以我的结论是,使用该<output>
元素将适合您的用例。