Chao tong guang:html将未转义的字符呈现为转义(tracer tong)

我在<pre>标签中呈现这行代码,以在屏幕上显示为正常文本:

<img src="http://maps.googlea.com/maps/api/staticmap?zoom=7&size=700x540&sensor=false$center=London, England&markers=London, England|Leicester, England|">

然而,它在多个浏览器中被错误呈现为:

<img src="http://maps.googlea.com/maps/api/staticmap?zoom=7&size=700x540&sensor=false¢er=London, England&markers=London, England|Leicester, England|">

由于一分钱符号的转义码是&cent;而不是&cent,我看不出为什么会发生这种情况,似乎没有任法可以防止它。

另外,我的 doctype:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

如果有任何区别,这行代码将通过 Javascript 的 innerHTML 方法添加到文档中。

1

仅仅因为<pre>中缺少某些内容。并不意味着您不必再次转义它(doctype 在这里没有区别)。如果您希望&在屏幕上显示,则&的任何实例都应使用实体&amp;。有时您可以在没有它的情况下逃脱,但这只是浏览器正在宽恕它(即使浏览器也不应该尝试使用

整个事情(源)应该是:

<pre>&lt;img src=&quot;http://maps.googlea.com/maps/api/staticmap?zoom=7&amp;size=700x540&amp;sensor=false&amp;center=London,England&amp;markers=London,England|Leicester,England|&quot;&gt;</pre>

顺便说一句,这也适用于属性值,如href。人们通常是“懒惰”,而不是逃避查询字符串中的和符号,但你真的应该这样做。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(507)
Html选择框代码:HTML颜色选择器与颜色框(html color finder)
上一篇
全屏轮播图代码:Bootstrap轮播全屏
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(83条)