无法真正理解这个问题。 出于某种原因 - IE10以逆序呈现希伯来语。 如果我使用兼容模式(IE开发者工具,IE 10兼容模式)它工作正常... http://www.undergraduate.technion.ac.il/rishum/index.html
尝试了各种RTL修复(Css,dir属性等)
答案 0 :(得分:2)
并非页面上的所有文字都按相反的顺序排列。似乎订单被颠倒的部分是在“希伯来语视觉”编码,ISO-8859-8中的框架页面中,即在希伯来文本以错误顺序写入的编码中。
对于页面http://www.undergraduate.technion.ac.il/rishum/entry.php,HTTP标头中没有可用的编码信息,页面包含使用未定义名称<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=VISUAL">
的{{1}}(VISUAL
是注册名称, ISO-8859-8
是定义的同义词)。但似乎IE 10将编码识别为ISO-8859-8,它只是错误地实现了它。
在我的IE 10(Win 7)上,标准和怪癖模式下的顺序都是错误的。将“文档模式”(实际上是浏览器的文档呈现模式)设置为IE 9或IE 8不会改变这一点;在IE 7模式下,渲染是正确的。
很难说这个IE漏洞是否可以被规避。最好通过在整个过程中使用UTF-8编码来避免这个问题,即将文件重新编码为UTF-8并将编码声明为UTF-8。
答案 1 :(得分:1)
框架集中的内容是什么?使用框架集中的阿拉伯语内容我在IE10和IE11中看到了这个问题。似乎IE试图镜像enitre框架。
对我有用的解决方案是从顶部框架集中的开始html标记中删除dir属性,并在每个框架的内容页面中的开始html标记中设置dir =“rtl”。
所以在框架集中:
<html>
<frameset>
<frame src="frame_a.html">
<frame src="frame_b.html">
</frameset>
</html>
然后在框架frame_a.html:
<html dir="rtl">
<head></head>
<body>
<p>لقد اطّلعت على هذا الدرس من قبل.هل تود العودة إلى آخر موضع اطّلععليه في الدرس؟</p>
</body>
</html>
答案 2 :(得分:0)
我不是RTL的专家,但考虑到它在兼容模式下工作,那么在短期内尝试添加
<meta http-equiv="X-UA-Compatible" content="IE=5">
从长远来看(或者如果不起作用),您需要考虑将页面重写为当前的HTML标准。你应该至少
BTW,使用http://validator.w3.org/检查最差的错误。由于这是一个框架式网站,您需要单独检查每个框架文档。