HTML <a> 标签的 name 属性

定义和用法

name 属性用于指定锚(anchor)的名称。

name 属性可以创建(大型)文档内的书签。

<a> 标签内必须提供 href 或 name 属性。

延伸阅读:使用 name 属性还是 id 属性

实例

通过 name 属性,我们可以制作一个目录列表:

<a href="#C1">第一章</a>
<a href="#C2">第二章</a>
<a href="#C3">第三章</a>
<a href="#C3">第四章</a>
...

亲自试一试

浏览器支持

主流的浏览器几乎都支持 name 属性。

语法

<a name="value">

属性值

描述
anchor_name 锚的名称。

延伸阅读:使用 name 属性还是 id 属性?

在 HTML 4.0 之前的版本中,只有使用 <a> 标签的 name 属性才能创建片段标识符。随着 HTML 4.0 中 id 属性的出现,所有 HTML 或 XHTML 元素都可以是片段标识符。这是因为 id 标识符几乎可以用在所有的标签中。<a> 标签为了能够和以前的版本相兼容而保留了 name 属性,同时也可以使用 id 属性。这些属性可以相互交换使用,可以把 id 属性看作是 name 属性的升级版本。name 和 id 属性都可以与 href 属性结合起来使用,这样一个 <a> 标签就可以同时作为超链接和片段标识符使用。

可以简单地将片段标识符看作是对许多编程语言中普遍使用的 goto 语句标签的 HTML 模拟。<a> 标签中的 name 属性或者 <a> 或其他标签中的 id 属性会在文档中放置一个标识。当标签用于链接到该文档时,就等于告诉浏览器要转到(goto)该标识。

id 或 name 属性的值可以是引号引起来的任何字符串。字符串必须是唯一的标记,不能在同一文档中的其他 name 或 id 属性中重复使用,但是可以在不同的文档中再次使用。

如果使用 id 属性,上面的实例可改写为:

<a id="#C1">第一章</a>
<a id="#C2">第二章</a>
<a id="#C3">第三章</a>
<a id="#C3">第四章</a>
...

或者直接在标题中设置 id 属性:

<h2 id="#C1">第一章</h2>
<h2 id="#C2">第二章</h2>
<h2 id="#C3">第三章</h2>
<h2 id="#C3">第四章</h2>
...