此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

<a>

基线 广泛可用 *

自 2015年7月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

* 此特性的某些部分的支持程度可能有所不同。

<a> SVG 元素用于创建指向其他网页、文件、同一页面中的位置、电子邮件地址或任何其他 URL 的超链接。它与 HTML 的 <a> 元素非常相似。

SVG 的 <a> 元素是一个容器,这意味着你可以像在 HTML 中一样为文本创建链接,也可以为任意形状创建链接。

使用上下文

类别容器元素
允许的内容任意数量、任意顺序的下列元素:
动画元素
描述性元素
形状元素
结构化元素
渐变元素
<a><clipPath><filter><foreignObject><image><marker><mask><pattern><script><style><switch><text><view>

属性

download

指示浏览器下载 URL,而不是导航到该地址,从而提示用户将其保存为本地文件。值类型<string>默认值动画性

href

超链接所指向的 URL 或 URL 片段。值类型<URL>默认值动画性

hreflang

超链接所指向的 URL 或 URL 片段的人类语言。值类型<string>默认值动画性

interestfor

<a> 元素定义为关注触发器。其值为目标元素的 id,当触发器元素获得或失去关注时(例如通过悬停/取消悬停或聚焦/取消聚焦),该目标元素将受到某种影响(通常表现为显示或隐藏)。更多细节和示例请参阅使用关注触发器值类型<string>默认值动画性

ping

以空格分隔的 URL 列表;跟随超链接时,浏览器会在后台向这些 URL 发送正文为 PINGPOST 请求。通常用于跟踪。若需功能相同且支持更广泛的特性,请参见 Navigator.sendBeacon()值类型<list-of-URLs>默认值动画性

referrerpolicy

获取 URL 时要发送哪个 referrer值类型no-referrer | no-referrer-when-downgrade | same-origin | origin | strict-origin | origin-when-cross-origin | strict-origin-when-cross-origin | unsafe-url默认值动画性

rel

目标对象与链接对象之间的关系。值类型<list-of-Link-Types>默认值动画性

target

在何处显示所链接的 URL值类型_self | _parent | _top | _blank | <XML-Name>默认值_self动画性

type

所链接 URL 的 MIME 类型值类型<string>默认值动画性

xlink:href

超链接所指向的 URL 或 URL 片段。为兼容旧版浏览器,可能仍需要此属性。值类型<URL>默认值动画性

DOM 接口

该元素实现了 SVGAElement 接口。

示例

html
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
  <!-- 围绕形状的链接 -->
  <a href="/docs/Web/SVG/Reference/Element/circle">
    <circle cx="50" cy="40" r="35" />
  </a>

  <!-- 围绕文本的链接 -->
  <a href="/docs/Web/SVG/Reference/Element/text">
    <text x="50" y="90" text-anchor="middle">&lt;circle&gt;</text>
  </a>
</svg>
css
/* SVG 不会为链接提供默认视觉样式,因此添加一些样式被视为最佳实践 */

@namespace svg url("http://www.w3.org/2000/svg");
/* 用于仅选择 SVG 的 <a> 元素,而不是 HTML 的 <a>。参见下方警告 */

svg|a:link,
svg|a:visited {
  cursor: pointer;
}

svg|a text,
text svg|a {
  fill: blue; /* 即使是文本,SVG 也使用 fill 而非 color */
  text-decoration: underline;
}

svg|a:hover,
svg|a:active {
  outline: dotted 1px blue;
}

警告:由于此元素与 HTML 的 <a> 元素共用标签名,使用 CSS 或 querySelector 选择 a 时可能会选中错误类型的元素。可尝试使用 @namespace 规则来区分二者。

规范

规范
Scalable Vector Graphics (SVG) 2
# Links

浏览器兼容性

参见