使用a标签的download属性可实现文件下载,点击链接时浏览器会直接下载而非打开文件。2. 可通过download属性指定下载后的文件名,如下载手册。3. 支持pdf、文档、图片、压缩包等常见文件类型,但跨域资源或服务器设置Content-Disposition为inline时可能失效。4. 旧版浏览器如IE不支持该属性,且外部链接跨域时download属性通常无效。5. 推荐使用同域相对路径确保功能正常,如下载报告。

在html中实现文件下载功能,最常用的方法是使用 a 标签并配合 download 属性。这样可以让用户点击链接时直接下载文件,而不是在浏览器中打开。
基本语法:使用 a 标签和 download 属性
通过给 a 标签添加 download 属性,可以告诉浏览器该链接用于下载资源。示例如下:
<a href=”example.pdf” download>下载PDF文件</a>
点击此链接时,浏览器会下载 example.pdf 文件,而不是尝试在页面中打开它。
自定义下载的文件名
你可以为下载的文件指定一个新名称,只需将文件名赋值给 download 属性:
立即学习“前端免费学习笔记(深入)”;
<a href=”document.pdf” download=”用户手册.pdf”>下载手册</a>
这样即使原文件名为 document.pdf,下载后的文件也会保存为 用户手册.pdf(注意编码问题,建议使用英文或确保服务器支持UTF-8)。
支持的文件类型与限制
download 属性对大多数静态文件类型都有效,比如:
- PDF(.pdf)
- 文档(.txt, .docx, .xlsx)
- 图片(.jpg, .png, .gif)
- 压缩包(.zip, .rar)
- 音频/视频(.mp3, .mp4 等)
但需注意:
- 跨域资源可能无法强制下载(浏览器出于安全考虑会忽略 download 属性)
- 某些服务器配置可能会覆盖此行为(如设置 Content-Disposition 为 inline)
- 部分旧版浏览器(如 IE)不支持 download 属性
相对路径与绝对路径的使用
href 可以使用相对路径或绝对路径:
<a href=”./files/report.docx” download>下载报告</a> <a href=”https://example.com/data.xlsx” download>下载数据表</a>
如果是外部链接且跨域,download 属性可能无效,浏览器会直接打开或按服务器响应处理。
基本上就这些。只要文件在同域下且格式正确,加上 download 属性就能实现简单高效的下载功能。


