You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

HTML5中带空格的<和>是否合法?需用实体字符吗?

HTML5中直接书写<和>是否合法?

结论先行

你给出的第一段代码是合法的HTML5,不需要强制将<>转义成&lt;和&gt;实体。

结合HTML5规范的具体说明

HTML5规范对文本内容中的<和>有明确的使用规则:

  • 对于<字符:只有当它作为标签的起始标记(即后面紧跟字母、/、!等能构成合法标签开头的字符)时,才必须转义为&lt;。如果<后面是空格、数字或其他非标签起始字符,直接书写完全合法。
  • 对于>字符:在普通文本内容(比如<p>标签内的内容)中,只要它不是标签结束标记的一部分,就可以直接书写,无需转义。

回到你的示例:

<p>1 < 2</p>
<p>2 > 1</p>

这里的<后面是空格和数字,不会被浏览器解析为标签的起始;>前面是数字和空格,也不属于标签结束的语法结构,所以这段代码完全符合HTML5规范,是合法的。

必须转义的场景

以下几种情况必须使用实体字符:

  • <后面紧跟合法的标签起始字符(比如<p>我要写&lt;div&gt;标签</p>,这里的<div>如果不转义,会被浏览器解析为真实的<div>标签)
  • 在HTML属性值中书写<或>(比如<input placeholder="请输入a &lt; b的内容">,属性值里的<必须转义)
  • 在非CDATA模式的脚本、样式代码块中书写<和>

内容的提问来源于stack exchange,提问作者Lone Learner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 04:23:24