3

某些 HTML 名称实体未在 IE8 中呈现,而是我可以看到未呈现的 HTML 实体!例如şı

我找到了使用 HTML 数字实体的解决方案,例如ş代替ş.

我想知道是否有人知道这个问题的原因以及是否有办法在 IE8 中正确查看şı类似实体?

这是我在 jsfiddle 上的代码:(如果将此代码复制到 HTML 文件中,它将不会在 IE8 中呈现)

http://jsfiddle.net/7uBrd/

<HTML lang="TR">
 <HEAD>
  <meta http-equiv="Content-type" content="text/html;charset=UTF-8"> 
  <TITLE>test</TITLE>
 </HEAD>
 <BODY>
  <p>This is not working in IE8: afi&scedil;ler, e&scedil;yalar&inodot;, k&inodot; </p>
  <p> This is working: afi&;#351;ler, e&#351;yalar&#305;, k&#305; </p>    
  <p>This is Working as well: test&nbsp;test&ndash;</p>
 </BODY>
</HTML>
4

2 回答 2

6

浏览器对命名 HTML 实体的支持总是比对数字实体的支持差。毕竟,数字是字符的 Unicode 代码点,而名称需要手动更新浏览器源代码中的查找表。您提到的那些实体只是不支持 Internet Explorer 版本 8(甚至版本 9,不知道 10)。

您已经有一个解决方法,但我建议您切换到 UTF-8 并完全避免实体(保存&amp;和其他合理的例外)。

于 2013-03-04T17:58:55.880 回答
3

HTML4 规范不包含scedil实体。 http://www.w3.org/TR/html4/sgml/entities.html

但是,HTML5 规范确实如此。 http://www.w3.org/TR/2011/WD-html5-20110113/named-character-references.html

于 2013-03-04T17:57:50.360 回答