<a>
><a> SVG 元素用于创建指向其他网页、文件、同一页面中的位置、电子邮件地址或任何其他 URL 的超链接。它与 HTML 的 <a> 元素非常相似。
SVG 的 <a> 元素是一个容器,这意味着你可以像在 HTML 中一样为文本创建链接,也可以为任意形状创建链接。
使用上下文
属性
download-
指示浏览器下载 URL,而不是导航到该地址,从而提示用户将其保存为本地文件。值类型:<string>;默认值:无;动画性:否
hrefhreflang-
超链接所指向的 URL 或 URL 片段的人类语言。值类型:<string>;默认值:无;动画性:否
interestfor-
将
<a>元素定义为关注触发器。其值为目标元素的id,当触发器元素获得或失去关注时(例如通过悬停/取消悬停或聚焦/取消聚焦),该目标元素将受到某种影响(通常表现为显示或隐藏)。更多细节和示例请参阅使用关注触发器。值类型:<string>;默认值:无;动画性:否 ping-
以空格分隔的 URL 列表;跟随超链接时,浏览器会在后台向这些 URL 发送正文为
PING的POST请求。通常用于跟踪。若需功能相同且支持更广泛的特性,请参见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 接口。
示例
<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"><circle></text>
</a>
</svg>
/* 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> |
浏览器兼容性
参见
xlink:title属性- HTML
<a>元素