IE8不呈现一些HTML名称实体

时间:2013-03-04 17:40:44

标签: html character-encoding html-entities

某些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>

2 个答案:

答案 0 :(得分:6)

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

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

答案 1 :(得分:3)