<p>规范写法是用标准HTML注释包裹ISO 8601格式日期,如<!-- 2024-05-20: 描述 -->,禁用嵌套、避免--和>出现在注释内,不混入JS代码。</p>

HTML 注释里怎么写日期才规范
HTML 本身不解析注释里的内容,所以日期写法完全取决于团队约定或个人习惯,但必须满足两个硬性条件:不破坏 HTML 结构、不被误当成有效标记。最安全的做法是用标准 HTML 注释语法 <!-- ... --> 包裹纯文本,中间不出现 -- 或 >。
- 别写成
<!-- 2024-05-20 -->(结尾多了一个>,会触发解析错误) - 避免嵌套注释,比如
<!-- <!-- old code --> -->,HTML 不支持嵌套,第二个<!--会被当作普通文本显示 - 日期推荐用 ISO 8601 格式:
2024-05-20,比05/20/2024更易排序、无地域歧义
常见实用注释模板(可直接复制)
以下格式经实际项目验证,兼容所有浏览器和构建工具(如 Webpack、Vite),不会触发 lint 报错或压缩异常:
<!-- 2024-05-20: 修复导航栏在 Safari 下的 z-index 问题 --> <!-- 2024-05-20T14:32:00+08:00: 临时注释掉旧版轮播组件,待迁移至 Swiper v11 --> <!-- [refactor] 2024-05-20: 将内联 style 移至 external.css,见 PR #142 -->
说明:
-
2024-05-20T14:32:00+08:00这种带时区的格式适合跨时区协作,Git 提交时间也默认用它 - 加方括号前缀(如
[refactor]、[fix])方便 grep 快速筛选,例如:grep -n "\[fix\]" index.html - 冒号后留一个空格,保持视觉呼吸感,避免紧贴日期造成阅读混淆
为什么不要在 HTML 注释里写 JavaScript 或变量
有人会写类似 <!-- Last updated: <script>document.write(new Date().toISOString().slice(0,10))</script> -->,这看似动态,实则危险:
立即学习“前端免费学习笔记(深入)”;
- HTML 解析器会在遇到
</script>时提前结束注释,导致后续内容裸露或报错 - 服务端渲染(SSR)或静态站点生成(SSG)时,这段脚本根本不会执行,注释里只剩文字
Last updated: - 搜索引擎和 Lighthouse 仍会扫描注释内容,混入 JS 可能被误判为可疑行为
- 真正需要动态更新的时间戳,应该用 JS 操作 DOM,而不是塞进 HTML 注释
自动化插入日期注释的可行方案
手动写日期容易漏、易出错。更可靠的方式是借助编辑器或构建流程:
- VS Code 安装插件 Auto Insert Date,绑定快捷键一键插入
<!-- YYYY-MM-DD: --> - 在
package.json的scripts中加一条:"update-date": "sed -i '' 's/











