cite属性有什么作用?

23

cite属性指定引用文本来源的地址,但谁会使用这些信息呢?

例如:

<q cite="http://www.example.com/quote">
<p>&#8220;A quote&#8221;</p>
<footer>&#151;Person quoted</footer>
</q>

在常规浏览器中,引用文本的来源对终端用户不可见,那么到底是谁会使用这些信息,以及如何使用呢?


1
好问题 - 我会设置赏金,但我没有足够的声望... - user1063295
7个回答

18

首先,cite 属性不仅适用于 blockquote 元素,还适用于以下元素:

<blockquote>
<del>
<ins>
<q>

以上元素中为什么要使用标签?

用于指向引文的来源,或引用的更改或删除。


这是w3.org的说法:

用户代理程序可以允许用户跟随此类引用链接,但它们主要是为私人使用而设计的(例如:由服务器端脚本收集有关网站编辑的统计信息),而不是为读者使用。


现在问题来了,谁会使用标签呢?

cite属性用于以URI的形式识别引文的在线来源(例如,“http://sourcewebsite.doc/document.html”)。

cite属性的值不会在屏幕上呈现(尽管通过DOM脚本的魔法,这个潜在的有用的元数据可以被提取并写回到网页中)。

因此,浏览器对该属性的支持被标记为无,但由于它有其他潜在用途(用于搜索引擎索引、通过DOM脚本检索等等),且未来可能会提供更好的本地支持,所以在使用上述元素时应该使用标签。

因此,目前没有人使用它,但将来可能会被用户代理程序或搜索引擎使用,所以最好使用它。


1
为什么属性必须“在屏幕上呈现”才能被浏览器标记为“支持的”? - BoltClock
1
@BoltClock。你是对的。但我只是想说它还没有用处,也没有像标题之类的东西渲染出来。 - Naeem Shaikh
1
这个属性的浏览器支持被标记为无。在哪里?由谁标记的?这一点让我感到困惑。 - Mark Amery

6
<cite>标签和 cite 属性都是用于语义目的,这意味着它们只是为网站提供更多“含义”。例如,我可以使用<div>标签引用一句话,而不是使用<blockquote>标签,但这会给浏览器提供更少的信息,因此建议在引用时使用<blockquote>

<cite>标签和 cite 属性也是如此。根据MDN对 cite 属性的定义(链接在此处):

<blockquote><q>元素上使用 cite 属性引用在线资源以作为来源。

“那么谁会使用这些信息,以及如何使用?” - 我认为搜索引擎(例如Google)将使用此信息显示文档之间的潜在链接。如果您考虑这一点,这是一个重要的观点。请查看下面的图像:

Search of Samsung on Google

注意它如何在右侧显示“Samsung Group”信息框。在Google工作的人不会编写此信息 - 相反,它是从维基百科获取的。但是,当其他网站上也写有此信息时,使用 cite 属性将此信息链接到维基百科(从而增加维基百科的相关性)时,此信息对搜索“三星”更具相关性。这就是为什么在此处使用维基百科的信息,而不是某个小学关于三星手机的网站。

cite 属性只是为网站提供更多含义。 Tim Berners-Lee将语义Web描述为“Web 3.0”的组成部分 - 换句话说,更新HTML语言的许多组件只是为了为网页提供更多含义,作为迈向Web 3.0的一步。

TL;DR - 简单地说, cite 属性只是为网页提供更多含义,并且可以用于搜索引擎以实现更好的网络链接。


你能否请澄清“注意如何使用”段落?它很难理解。cite属性在哪里使用,在维基页面上,谷歌页面上,三星或引用维基百科的其他页面上?你能具体说明吗?因为答案的其余部分是清晰和有用的。 - Santropedro
@Santropedro,MDN将其描述为“包含指向引用或更改源的URI”,我认为这最好概括了cite属性的作用。MDN链接 - Lucas
我现在是否正确理解了“注意如何”段落?1)当Google看到许多网站谈论三星时,它们会通过在源代码中简单地使用cite属性和链接1:https://en.wikipedia.org/wiki/Samsung来“引用”,那么Google认为“嗯,这个网站似乎很可信并且被其他人引用得非常多,所以我们将在右侧的信息框中使用它。值得一提的是,我发现有些网站逐字引用链接1,但(可悲的是)没有使用cite =“link1”!这些不会“帮助”维基百科被Google发现,至少不会那么容易。 - Santropedro
1
@Santropedro 是的 :) 在互联网上链接的概念是“页面排名”的基础,这是搜索引擎用于按照网站的受欢迎程度和相关性进行排名的算法的基础。 - Lucas

0

W3C这样说:

该属性的值是指定源文档或消息的URI。该属性旨在提供有关引用的来源的信息。

它不可见,我想不出除了搜索引擎之外还有哪里会使用它。


0

它的设计初衷是为了被采集和整理数据的机器使用,例如搜索引擎,但任何机器都可以使用。它的目的是使网页更有系统性,以便机器阅读。因为仅凭上下文无法理解文本的哪一部分代表引用和引述。 您可以查阅语义网以获取更多信息。 http://en.wikipedia.org/wiki/Semantic_Web


0

5
对我来说,这听起来像是无稽之谈。他们声称搜索引擎“可能”会使用它,但没有提供任何证据表明他们确实这样做,也没有建议它将用于什么目的。不管怎样,他们已经删除了这个声明,并用另一种荒唐的猜测替换了它,即属性“可以被屏幕阅读器使用”。同样,没有给出任何证据表明这种说法是正确的,而且完全不清楚屏幕阅读器为什么或如何使用该属性。 - Mark Amery
如果您意图引用权威来源,那您可能是想引用W3C(W3Schools绝对不是一份权威的参考资料,并且它的名称旨在欺骗您)。这里是关于“cite”属性的W3C信息:https://dev.w3.org/html5/pf-summary/text-level-semantics.html#attr-q-cite - Dem Pilafian

0

是的,引用来源对终端用户不可见。因此,它只是对源的引用。

来自WHATWG.ORG的定义

q元素内部的内容必须来自另一个来源,并且如果有地址,则可以在cite属性中引用该地址。源可以是虚构的,例如在引用小说或剧本中的角色时。

如果存在cite属性,则必须是一个有效的URL,可能带有空格。


-1

这只是另一个元数据块,可以被服务器端脚本用来收集统计信息,或者由前端开发人员添加功能(他们可以选择打印源代码,允许访问原始源代码等)。

尽管对最终用户实际上并不是非常有用,但将原始源代码写在某个地方是一个好习惯。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接