为什么<a> tag represent links, when a perfectly valid <link/> tag exists?

时间:2016-07-19 01:21:19

标签: conventions

There's probably a historical reason for this, but I don't know where to start looking for where this might be documented.

Specifically, instead of the cryptic "anchor tag" with a "hypertext reference" (well, I suppose terminology was different back then):

<a href="https://stackoverflow.com">StackOverflow</a>

why didn't something like this happen?

<link to="https://stackoverflow.com">StackOverflow</link>

What exactly did "anchor" mean anyway?

3 个答案:

答案 0 :(得分:5)

根据W3 docs

  

链接有两个端点 - 称为锚点 - 和方向。链接从“源”锚点开始并指向“目标”锚点,该锚点可以是任何Web资源(例如,图像,视频剪辑,声音咬合,程序,HTML文档,HTML中的元素)文件等。)。

我不是该领域的专家,但我认为这仅仅是因为当时的术语。阅读该文章可以提供有关定义的更多详细信息,但您可能需要向原作者或历史学家发送消息以提供可信的答案。

答案 1 :(得分:4)

A是锚点的缩写,可以是网址或命名锚点(使用<a name="myanchor">text</a>创建)。我的示例中的text视觉上不同,另一个A标记可以将其href设置为#myanchor。单击时,浏览器会将命名的A标记滚动到页面顶部,或者至少确保它可见。

直到后来才添加链接,这在语义上意味着其他东西。

请参阅http://www.w3schools.com/tags/tag_a.asp

至于为什么,我认为当时只有Html小组可以回答,但我猜是因为你可以链接到另一个页面或文档内,超链接并不是它所能做的全部。或者也许由于带宽更贵,简洁性更高。

答案 2 :(得分:2)

链接标记引用当前文档与外部源的链接,因此它用于指定具有关联CSS文件的链接。您的想法是&#34;超链接&#34;,这与标记的预期用法不同。 至于你关于&#34; anchor&#34;的新问题,我会假设它的名字是因为锚点贴在它的位置,而锚标记指向一个特定的位置(有时在同一页面上,使用#id )。