internet-explorer - 如何强制 Internet Explorer 使用元标记中给出的编码?

标签 internet-explorer unicode utf-8 internet-explorer-7 character-encoding

我正在尝试准备一个包含英语和阿拉伯语内容的演示 html 页面。 基本上它包含一个小表格,左侧是英语短语,右侧是阿拉伯语翻译。

因为我不懂阿拉伯语,所以我从 Unicode reference 中取了阿拉伯字母的前三个字符。 .

第一次尝试,使用字符实体 (ا ب ت):它有效(显示:ا ب ت)。

我尝试在文档中直接输入阿拉伯字符。为了实现这一点,我将文档保存为 UTF-8 并添加了内容类型的元标记。

在 Internet Explorer (7) 中显示此文档显示垃圾:ا ب ت

手动切换 IE 以使用 UTF-8(菜单“查看 -> 查看 -> Unicode”)使 IE 显示正确的字符。但是一旦重新加载文档,垃圾就会再次出现。

<html>
  <head>
  <meta content="content-type" content="text/html; charset=utf-8">
  </head>
  <body>
    <table width="95%" border="1">
      <colgroup><col width="50%" /><col width="50%" /></colgroup>
      <tbody>
        <tr>
          <th>English</th><th>Arabic</th>
        </tr>
        <tr>
          <td>Test phrase</td>
          <td dir="rtl">ا ب ت</td>
        </tr>
      </tbody>
    </table>
  </body>
</html>

用 Firefox 测试显示正确的阿拉伯字母。 (但方向“rtl”的解释不同:IE显示文本右对齐,Firefox显示左对齐。)

任何提示如何说服 IE 使用文档中给出的编码?

这是本地存储的 html 文件的影响吗?在编辑此 StackOverflow 条目时,我观察到

  • 阿拉伯字符按预期呈现,
  • 菜单中的编码自动切换为“Unicode (UTF-8)”,
  • 并且html的源代码不包含内容类型的元标记。

最佳答案

您的元标记中似乎有一个小错字。它应该说:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      ^ you had 'content' here,   and forgot to close the tag here ^

我手边没有IE7,所以无法检查是否是这个原因。两个版本都可以在 IE8 上正常运行

关于internet-explorer - 如何强制 Internet Explorer 使用元标记中给出的编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/968523/

相关文章:

internet-explorer - Set-Cookie : Expire property, 时钟偏差和 Internet Explorer 问题

html - Windows 7 上的 Internet Explorer 10 不加载嵌入字体

html - CSS 画廊 IE 问题

java - 如何使用 GET 请求在 tomcat 中保留 utf-8 字符编码

Mongodb 错误 $substrBytes : Invalid range, 结束索引在一个 UTF-8 字符的中间

unicode - Unicode 联盟是否打算让 UTF-16 用完字符?

javascript - 在 Internet Explorer 中下载动态 CSV

c++ - 在 LPSTR (UNICODE) C++ 中递增元素时出错

unicode - 这个字符分隔符是什么:^ _?

python - 字符\u260e