meta http-equiv="refresh" 的 content 必须严格格式为“秒数;url=url”,秒数支持0及正小数(如0.1),url中&需实体化,相对路径以当前文件目录为基准,绝对路径从域名根开始,且无法取消或响应交互。

meta http-equiv="refresh" 的 content 格式必须严格匹配
直接写 <meta http-equiv="refresh" content="3;url=https://new.com"> 就能生效,但错一个字符就完全失效。常见错误包括:content="3 ; url=..."(分号后空格)、content="3;rul=..."(拼错 url)、content="3;https://..."(漏掉 url= 前缀)。Chrome、Firefox、Safari 都认这个写法,但 Safari 17+ 对空格更敏感,建议手敲不复制。
秒数支持小数,但不能为负或非数字
content 中的秒数部分可以是 0、3、5.5,甚至 0.1,但不能是 -1 或 three。值为 0 表示立即跳转,常用于登录成功页重定向;值为 0.1 是实际可用的最小延迟,比 0 多一点渲染缓冲,避免白屏闪动。注意:IE 已淘汰,无需特别兼容。
相对路径和绝对路径行为不同
url 值用相对路径时,以当前 HTML 文件所在目录为基准:url=./admin/ 解析为同级 admin/ 目录,url=/admin/ 则从域名根路径开始。如果页面部署在子路径(如 https://a.com/v2/index.html),而你写了 url=/dashboard,跳转目标就是 https://a.com/dashboard,不是 https://a.com/v2/dashboard。容易踩坑的是带查询参数的 URL:url=/search?q=test&sort=asc,& 必须实体化,否则 HTML 解析会截断。
meta refresh 不会自动清理定时器,也不响应用户交互
它一旦插入 就启动计时,无法取消,也不感知页面是否被切到后台、标签页是否休眠。浏览器可能节流后台定时器,导致实际跳转延迟远超设定值(比如设了 3 秒,休眠后醒来才跳)。如果你需要“用户点击后才开始倒计时”或“跳转前上报埋点”,meta 方案做不到——得换 setTimeout + window.location.href。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











