我有些困惑应该使用哪种标签来呈现数据。我的情景是需要呈现计数,但我不确定是使用 span
还是 label
。
<span id="spnCount"></span>
或者<label id="lblCount"></label>
我有些困惑应该使用哪种标签来呈现数据。我的情景是需要呈现计数,但我不确定是使用 span
还是 label
。
<span id="spnCount"></span>
或者<label id="lblCount"></label>
当您拥有表单或输入元素时,label
用于关联 input
元素。 span
是任何内联内容的通用容器。我认为在这种情况下您需要使用一个 span
。
每个“回答”的人都只是复制粘贴了描述预期用例的文档。然而,没有人解释差异或为什么应该使用其中之一的原因。
事实上,任何一个都在技术上可以工作,所以它实际上并不重要。您可以使用许多其他类似的标签,包括 标签(使用类正确地进行样式设置)。分配一个唯一的ID,使用document.getElementById()
或使用节点等,做你想做的事情。唯一关心的人是语义纯粹主义者。
标签“can”和“should”可以与表单输入元素一起使用,这是真的。但是,它不是真的不能或必须不以任何其他方式使用。这意味着它可以和可能以其他方式使用。
首先,注意到<label>
只是作为一个标签“用于元素”。它并没有说明元素的类型。它并没有说它必须是输入元素或表单元素。实际上,非表单元素也可以与控件相关联,以提供用户体验,这些控件可能使用 CSS 操作对象等等,而标签只是将文本连接到任何这样的东西。表单可以在页面上不可见存在。谁知道呢。<label>
的定义可能会更严格地强制要求与表单输入元素相关联,那么您可能会遇到问题。但同样适用于我们依赖的任何规范的任何其他方面,只是为了呈现页面而已。嗯,也许对于视力受损的人来说,如果他们依赖于一些将<label>
与<span>
区分对待的技术,这可能会使技术或用户或两者都感到困惑。我没有任何使用这种辅助设备的经验,但这可能是一个更好的原因为什么。
另一个有效的原因是<span>
比<label>
更短,更容易输入。
还有一个原因可能是,如果使用<label>
与<span>
,搜索引擎在排名您的页面或引用内容时可能存在微小差异。这有点牵强,因为这样的算法通常不公开,但这是可能的。一个引擎可能以一种方式产生更好的结果,另一个引擎可能更喜欢另一种方式,而另一个引擎可能无论如何都不关心。
所有这些都说了,没有进一步了解上下文的情况下,我可能会选择<span>
,因为它似乎是最通用和最少争议的做事方式。但我觉得这个问题缺乏一个全面的答案,因为答案通常涉及对为什么的理解。
<label>
而不是<span>
。目前为止,我无法确定哪种方式更好,也没有办法进一步调查。在这里进行进一步研究将非常有益,以获得明确的答案。 - user2895783标签定义了一个元素的标签。如果您不是用于输入元素,则可以使用 span。
label
在 HTML 中用于为表单控件添加标签。它还有一个 for
属性,可以设置与此标签相关联的控件的 ID。当您需要显示一些文字数据时,可以使用 span
。
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/span
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label
如果你有一个输入字段,使用