使用HTML实体转义|字符的正确方法

使用HTML实体转义|字符的正确方法,html,html-entities,htmltidy,Html,Html Entities,Htmltidy,为了在HTML中转义符号和字符,我使用&HTML实体,例如: <a href="https://www.example.com/?q1=val1&amp;q2=val2">Link</a> HTML Tidy正在抱怨,声称在我的HTML中发现了非法字符 我尝试使用¦和其他几个HTML实体,但Tidy说“格式错误的URI引用。”你不会 问题是(正如消息所说)这个字符在URL中是非法的。它在HTML中非常好 您需要应用您不需要的%7C 问题是(正如

为了在HTML中转义符号和字符,我使用
&HTML实体,例如:

<a href="https://www.example.com/?q1=val1&amp;q2=val2">Link</a>
HTML Tidy正在抱怨,声称在我的HTML中发现了非法字符

我尝试使用
¦
和其他几个HTML实体,但Tidy说“格式错误的URI引用。”

你不会

问题是(正如消息所说)这个字符在URL中是非法的。它在HTML中非常好

您需要应用您不需要的
%7C

问题是(正如消息所说)这个字符在URL中是非法的。它在HTML中非常好


您需要应用
%7C

我不知道为什么tidy会抱怨它,但这个字符在HTML或URL中都没有问题<代码>|
不是保留字符,可以按原样在URL中使用。您可以对每个字符进行百分比编码,但实际上不需要它

我认为Tidy可能会抱怨的是
=
。你有两个,第二个是无效的


不需要在HTML实体中对该字符进行编码。它在HTML中没有特殊意义。

我不知道为什么tidy会抱怨它,但这个字符在HTML和URL中都没有问题<代码>|不是保留字符,可以按原样在URL中使用。您可以对每个字符进行百分比编码,但实际上不需要它

我认为Tidy可能会抱怨的是
=
。你有两个,第二个是无效的


不需要在HTML实体中对该字符进行编码。它在HTML中没有特殊意义。

谢谢昆汀。使用HTML实体或百分比编码转义的规则是什么?对URL中的特殊字符使用URL编码。对HTML中具有特殊含义的字符使用HTML编码(
”&
)谢谢Quentin。什么时候应该使用HTML实体或百分比编码进行转义?对URL中的特殊字符使用URL编码。对HTML中具有特殊含义的字符使用HTML编码(
”&
)我验证了HTML Tidy抱怨的是垂直条字符,因为如果我删除它,警告就会消失。你能告诉我们如何重现这个问题吗?我正在使用带有HTML Tidy插件的Sublime文本编辑器进行linting。我验证了HTML Tidy抱怨的是垂直条字符,因为如果我删除它,警告消失了。你能告诉我们如何重现这个问题吗?我正在使用带有HTML Tidy插件的Sublime文本编辑器进行linting。
<a href="https://www.example.com/?q1=val1|q2=val2">Link</a>