我正在尝试准备一个包含英语和阿拉伯语内容的演示 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/