基础链接:<a>

HTML 中所有链接的核心都是 <a> 标签("a" 代表 "anchor" - 锚点)。

html 链接网页的代码大全
(图片来源网络,侵删)

基本语法

<a href="目标网址或路径">链接显示的文本</a>
  • <a>: 链接的标签。
  • href: Hyperlink Reference 的缩写,是必需的属性,指定链接的目标。
  • 链接显示的文本: 用户在网页上看到并可以点击的文字。

示例:链接到外部网站

<p>访问我们的<a href="https://www.google.com">Google</a>搜索页面。</p>

链接到不同类型的目标

href 属性的值可以指向各种不同的资源。

链接到外部网站

必须使用完整的 URL(包含 http://https://)。

<a href="https://www.github.com">GitHub</a>

链接到网站内部的其他页面

使用相对路径,这是最佳实践,相对路径是相对于当前 HTML 文件所在的位置。

假设你的文件结构如下:

html 链接网页的代码大全
(图片来源网络,侵删)
/my-website/
├── index.html
├── about.html
└── products/
    └── product1.html
  • 链接到同目录下的文件 (从 index.html 链接到 about.html)

    <a href="about.html">关于我们</a>
  • 链接到子目录下的文件 (从 index.html 链接到 products/product1.html)

    <a href="products/product1.html">产品 1</a>
  • 从子目录链接到根目录 (从 products/product1.html 链接到 index.html)

    <a href="../index.html">返回首页</a>
    • 代表当前目录。
    • 代表上一级目录。

链接到同一页面的不同部分(页面内锚点)

这可以通过 IDhref 以 开头来实现。

html 链接网页的代码大全
(图片来源网络,侵删)

第一步: 在目标元素上设置一个唯一的 id 属性。

<h2 id="section2">第二章:入门指南</h2>

第二步: 创建一个链接,href 的值是 加上 id 名称。

<a href="#section2">跳转到第二章</a>

示例:

<p><a href="#top">回到顶部</a></p>
<h2 id="top">页面顶部</h2>
<p>这里是页面的内容...</p>
<h2 id="section2">第二章:入门指南</h2>
<p>这里是第二章的内容...</p>

下载文件

href 指向的文件浏览器无法直接显示(如 .pdf, .zip, .jpg),浏览器通常会尝试下载它。

<!-- 下载一个名为 report.pdf 的文件 -->
<a href="files/report.pdf" download="我的年度报告.pdf">下载年度报告</a>
  • download 属性:告诉浏览器这是一个下载链接,你可以指定一个默认的下载文件名。

发送邮件 (mailto)

使用 mailto: 协议创建一个链接,点击后会打开用户的默认邮件客户端。

<a href="mailto:someone@example.com?subject=咨询&body=你好,我想了解更多信息。">发送邮件给我们</a>
  • mailto:收件人邮箱
  • ?subject=邮件主题
  • &body=邮件正文
  • 可以使用 & 来添加多个参数,如 cc (抄送) 和 bcc (密送)。

拨打电话 (tel)

在移动设备上非常有用,点击后会拨打电话。

<a href="tel:+8613800138000">联系我们: 138-0013-8000</a>

链接的属性

<a> 标签还有一些重要的属性,用于控制链接的行为和外观。

target 属性

定义在何处打开链接文档。

  • _self: 默认值,在当前窗口或标签页中打开链接。
  • _blank: 在一个新的、未命名的浏览器标签页或窗口中打开链接。
      <a href="https://www.external-site.com" target="_blank">在新标签页打开外部网站</a>

    安全提示: 使用 target="_blank" 时存在安全风险,因为新页面可以通过 window.opener JavaScript 对象控制原始页面,为了缓解,建议添加 rel="noopener noreferrer"

  • _parent: 在父框架集中打开链接。
  • _top: 在整个窗口中打开链接,会取消所有框架。

rel 属性

定义当前页面与链接目标之间的关系,通常与 target="_blank" 一起使用。

  • noopener: 强烈推荐,阻止新打开的页面通过 window.opener 访问原始页面,提高了安全性。
  • noreferrer: 阻止浏览器发送 Referer HTTP 头,保护隐私。
  • nofollow: 告诉搜索引擎不要跟随此链接传递权重(常用于用户生成内容,防止垃圾链接)。

最佳实践组合:

<a href="https://www.external-site.com" target="_blank" rel="noopener noreferrer">
    安全的外部链接
</a>

title 属性

提供链接的额外信息,当用户鼠标悬停在链接上时会显示一个工具提示。

<a href="help.html" title="点击这里获取帮助">帮助中心</a>

高级用法与最佳实践

使用图片作为链接

<img> 标签放在 <a> 标签内部即可。

<a href="gallery.html">
    <img src="images/thumbnail.jpg" alt="图片预览,点击查看大图">
</a>

创建按钮式链接

使用 CSS 将链接样式化,使其看起来像按钮。

<style>
  .my-button {
    display: inline-block;
    padding: 10px 20px;
    background-color: #007bff;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    border: none;
    cursor: pointer;
  }
  .my-button:hover {
    background-color: #0056b3;
  }
</style>
<a href="#submit" class="my-button">提交</a>

链接状态伪类

使用 CSS 可以设置链接在不同状态下的样式:

  • a:link: 普通的、未被访问过的链接。
  • a:visited: 用户已经访问过的链接。
  • a:hover: 鼠标指针悬停在链接上时。
  • a:active: 链接被点击时。
/* 未访问的链接为蓝色 */
a:link {
  color: blue;
}
/* 已访问的链接为紫色 */
a:visited {
  color: purple;
}
/* 鼠标悬停时为红色 */
a:hover {
  color: red;
}
/* 点击时为绿色 */
a:active {
  color: green;
}

下载属性 (download) 的详细用法

除了指定下载名,download 属性也可以不指定值,浏览器会使用原始文件名。

<a href="files/document.docx" download>下载文档</a>

代码大全速查表

功能 代码 说明
基础链接 <a href="https://example.com">示例网站</a> 链接到外部网站
内部链接 <a href="about.html">关于我们</a> 链接到同目录下的 about.html
子目录链接 <a href="products/item1.html">产品1</a> 链接到 products 文件夹下的文件
上级目录链接 <a href="../index.html">返回首页</a> 链接到上一级目录的 index.html
页面内锚点 <a href="#section1">跳转到第一章</a> <h2 id="section1">第一章</h2>
新窗口打开 <a href="https://google.com" target="_blank">Google</a> 在新标签页打开
安全新窗口 <a href="https://google.com" target="_blank" rel="noopener noreferrer">Google</a> 安全地在新标签页打开
发送邮件 <a href="mailto:test@example.com">发送邮件</a> 打开邮件客户端
发送邮件(带主题) <a href="mailto:test@example.com?subject=反馈">发送反馈</a> 带预设主题的邮件
拨打电话 <a href="tel:+1234567890">拨打电话</a> 在移动设备上拨号
下载文件 <a href="file.zip" download="my-file.zip">下载压缩包</a> 强制下载并重命名
图片链接 <a href="large.jpg"><img src="thumb.jpg" alt="预览图"></a> 点击图片跳转
链接提示 <a href="help.html" title="点击查看帮助">帮助</a> 鼠标悬停显示提示

希望这份大全能帮助您掌握 HTML 链接的所有用法!