使用download属性可让HTML链接直接下载文件。1. 基本用法:下载PDF触发下载而非打开;2. 自定义文件名:下载手册使文件保存为指定名称;3. 支持类型包括PDF、图片、文档、压缩包等,但跨域且无CORS时可能失效;4. 动态内容可通过JavaScript创建Blob链接实现下载,如生成文本并触发下载。注意同源策略限制。

要让HTML链接点击后直接下载文件,而不是在浏览器中打开,可以通过给 a 标签添加 download 属性来实现。这个属性告诉浏览器应该下载目标文件,而不是导航到它。
基本语法:使用 download 属性
最简单的方法是在 a 标签中设置 download 属性:
下载PDF文件点击该链接时,浏览器会尝试下载 file.pdf 文件,而不是在页面中打开它。
指定下载的文件名
你还可以通过为 download 属性赋值来自定义保存时的文件名:
立即学习“前端免费学习笔记(深入)”;
下载手册这样即使原文件叫 document.pdf,下载时默认保存为 用户手册.pdf。
艺帆集团公司企业网站源码基于艺帆企业cms制作,全站div+css 制作;它包含了单页设置、单页分类设置、新闻、产品、下载、在线招聘、在线留言、幻灯管理、友情链接管理和数据库备份等功能。 DIV+CSS布局优势一.精简代码,减少重构难度。网站使用DIV+CSS布局使代码很是精简,相信大多朋友也都略有所闻,css文件可以在网站的任意一个页面进行调用,而若是使用table表格修改部分页面却是显得很麻烦
支持的文件类型和限制
download 属性对大多数静态文件有效,例如:
- PDF 文件(.pdf)
- 图片(.jpg, .png, .gif 等)
- 文档(.docx, .xlsx, .txt)
- 压缩包(.zip, .rar)
- 音频/视频(部分浏览器可能仍会播放)
注意:如果文件位于跨域 URL 且服务器未配置CORS允许,download 属性可能无效,浏览器会退回到正常打开行为。
配合 JavaScript 动态触发下载
对于动态生成的内容(如 Blob),可以结合 JavaScript 创建临时下载链接:
const blob = new Blob(["Hello, 下载内容!"], { type: "text/plain" });const url = URL.createObjectURL(blob);
const a = document.createElement("a");
a.href = url;
a.download = "example.txt";
a.click();
URL.revokeObjectURL(url);
这种方式常用于导出文本、CSV 或前端生成的文件。
基本上就这些。只要合理使用 download 属性,并注意同源策略限制,就能轻松实现链接下载功能。










