Html img标签是否为';s alt属性是否需要编码?

Html img标签是否为';s alt属性是否需要编码?,html,syntax,encoding,escaping,Html,Syntax,Encoding,Escaping,在html中,文本中的文本是否需要编码/转义 非编码示例: <img src="myimg.png" alt="image description" /> 编码示例: <img src="myimg.png" alt="image%20description" /> 不,它没有。编码是针对URL的,如中所示,alt字符串不是 不过,您需要使用将转义为,并将“转义为”。请注意,这与将特殊字符编码为百分号加两个十六进制数字不同。不,它不需要像URI那样编码。但是,HT

在html中,文本中的文本是否需要编码/转义

非编码示例:

<img src="myimg.png" alt="image description" />

编码示例:

<img src="myimg.png" alt="image%20description" />

不,它没有。编码是针对URL的,如中所示,
alt
字符串不是


不过,您需要使用将
转义为
,并将
转义为
。请注意,这与将特殊字符编码为百分号加两个十六进制数字不同。

不,它不需要像URI那样编码。但是,HTML字符必须进行编码,如下所示

<img src="myimg.png" alt="Me &amp; my image" />

它们不需要URL编码,但与所有XHTML属性一样,它们确实需要XHTML实体编码

不正确:

<img src="foo.gif" alt="Ben & Jerry's" />

正确:

<img src="foo.gif" alt="Ben &amp; Jerry's" />

您还需要在值中对双引号进行编码,即使在一般文本中不必这样做

参考:


您应该使用HTML编码(即“变成”),而不是URL编码。如果您使用的是ASP.NET,您可以通过Server.HtmlEncode实现这一点,或者更好地使用中的htmlAttributencode方法。

将“应该”替换为“必须”--至少如果您想通过验证器,则替换为必须,如果您不想被发现在其中添加引号。如果您不想看到死亡的黄色屏幕,则替换为必须(假设您将XHTML作为应用程序/XHTML+xml提供服务,否则编写XHTML会比它更麻烦)您是对的。对此表示抱歉。尽管HTML5即将面世,但我仍然不确定它有多重要。