标签仅用于数学公式或伪代码中表示待求解的变量,如“A = πr²”中的A、r;不可用于代码变量名、环境变量等场景,它无语义增强作用且不提升可访问性。

var 标签不是用来标注变量名的
HTML 的 <var></var> 标签语义上专指「数学表达式中待求解的变量」或「程序示例中被赋值/操作的变量」,不是通用的「高亮变量名」工具。它不改变样式,也不影响可访问性(屏幕阅读器通常不会特殊处理),更不能替代 <code> 或 <span></span> 做语法高亮。
什么时候该用 ?看语境是否符合语义
只有当文本在解释一个公式、算法逻辑或伪代码时,且该标识符确实在扮演「变化的量」角色,才适合用 <var></var>。比如文档里写「圆面积公式为 <var>A</var> = π<var>r</var>²」,其中 <code>A 和 r 是公式里的符号变量,不是具体值,也不是代码中的实际变量声明。
- ✅ 合理:
<p>令 <var>x</var> 为输入值,计算 <var>y</var> = <var>x</var>² + 2<var>x</var> + 1</p> - ❌ 不合理:
<p>调用 <code>fetchData()并将结果赋给 data立即学习“前端免费学习笔记(深入)”;
—— 这里data是 JS 变量名,应使用<code>data - ❌ 不合理:
<p>环境变量 <var>NODE_ENV</var> 必须设为 <code>"production"——NODE_ENV是配置键名,非数学/逻辑变量,用<code>更准确
和 、<span> 的关键区别</span>
<var></var> 是语义标签,浏览器默认仅做斜体渲染(CSS 可覆盖),而 <code> 表示一段计算机可执行/可引用的文本片段,有明确的语义边界;<span></span> 则无语义,纯靠 class 控制样式与行为。
-
<var></var>:强调「这个符号代表一个可变的量」,适用于教学、公式推导、伪代码说明 <code>:强调「这是真实存在的代码片段或标识符」,如函数名parseInt、变量名userList、错误信息ReferenceError-
<span></span>:需要加 class 实现语法高亮、链接跳转、动态替换等交互时才用,比如<span class="token variable">count</span>
容易被忽略的兼容性与可访问性事实
多数现代浏览器对 <var></var> 的默认样式是 font-style: italic,但它没有 ARIA role,也不会被主流屏幕阅读器读作「变量」;它只是个普通内联元素。如果你指望靠它提升可访问性,会落空。
- 不要依赖
<var></var>实现代码高亮 —— 它没 class、没 data 属性、无法绑定语法解析逻辑 - 不要用它包裹整个表达式,比如
<var>a + b * c</var>—— 这混淆了「变量」和「表达式」的语义层级 - 如果文档要同时兼顾数学公式和编程示例,建议统一用
<code>处理所有代码相关文本,用<var></var>仅限公式推导段落,避免混用导致语义混乱
实际写文档时,语义清晰比视觉一致更重要。很多人一看到「变量」就下意识用 <var></var>,结果把配置项、API 参数、错误码全包进去,反而让 HTML 结构失焦。



















