前端开发中可以跨域的 HTML 标签和属性总结
一、支持跨域请求的 HTML 标签
| 标签 | 跨域能力 | 跨域相关属性 | 使用场景 | CORS 要求 | 安全限制 |
|---|---|---|---|---|---|
<img> | ✅ 支持跨域加载图片 | crossorigin | 加载第三方图片、头像、验证码等 | 设置 crossorigin 时需 CORS | 无法读取图片内容(除非配置 CORS 且画布同源) |
<script> | ✅ 支持跨域加载 JS | crossorigin | CDN 加载 JS 库、JSONP、模块化脚本 | 设置 crossorigin 时需 CORS | 错误信息不透明(除非 CORS) |
<link> | ✅ 支持跨域加载 CSS | crossorigin | 加载第三方 CSS、字体、图标库 | 设置 crossorigin 时需 CORS | 字体文件需 CORS 配置 |
<audio> | ✅ 支持跨域加载音频 | crossorigin | 加载第三方音频资源 | 设置 crossorigin 时需 CORS | 音频分析需 CORS |
<video> | ✅ 支持跨域加载视频 | crossorigin | 加载第三方视频资源 | 设置 crossorigin 时需 CORS | 视频截图需 CORS |
<iframe> | ✅ 支持跨域嵌入页面 | sandbox、allow | 嵌入第三方页面、微前端 | 需目标页面允许嵌入 | 受 X-Frame-Options 限制,通信需 postMessage |
<form> | ✅ 支持跨域提交表单 | action、target | 跨域表单提交、文件上传 | 传统方式无需 CORS | 无返回值获取(重定向或 iframe 捕获) |
<a> | ✅ 支持跨域导航 | href、target | 跳转到第三方网站 | 无需特殊配置 | 无法读取目标页面内容 |
<source> | ✅ 支持跨域媒体资源 | src | 配合 audio/video 使用 | 与父标签一致 | 同 audio/video 限制 |
<track> |


