如何在HTML文档中混合希伯来语和拉丁文?

时间:2014-04-06 15:02:40

标签: html right-to-left hebrew left-to-right

我有一个包含希伯来文和拉丁文的html文档。它用utf-8编码:

<!DOCTYPE HTML>
<html>
<head>
  <title>Title</title>
  <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
</head>

<style type='text/css'> 
     .h  { color: green}
</style>

<body>

   <div>
      here are some words הנה כמה מילות (100, 200)
   </div>

   <div>
      here are some words <span class='h'>הנה כמה מילות</span> (100, 200)
   </div>

   <div>
      here are some words <span class='h'>הנה כמה מילות</span> <span>(100, 200)</span>
   </div>

   <div>
      here are some words <span class='h'>הנה כמה מילות</span> <b>WORD</b> <span>(100, 200)</span>
   </div>

</body>
</html>

我认为应该显示前三行。第四个(在parantheses前面附加<b>WORD</b>是。

以下是此文档在Firefox中的显示方式:

Firefox' rendeering

编辑甚至我的html文本的复制/粘贴都没有正常工作,所以这里是原始html的屏幕截图(对不起,但似乎无法正确呈现此文本) :

enter image description here

2 个答案:

答案 0 :(得分:8)

当您在同一页面上混合使用拉丁文和希伯来字母的单词时,由于字符的固有方向性,通常会正确编写单词序列。希伯来语段落从右到左。

但是当涉及像括号这样的字符时,事情变得更加复杂。括号是方向中性(或粗体)并参与相邻字符的方向。当它们出现在拉丁文和希伯来文字母之间时会出现问题。一个简单的补救措施是使用LEFT-TO-RIGHT MARK字符,在HTML中可以表示为&lrm;,例如

here are some words <span class='h'>הנה כמה מילות</span> &lrm;(100, 200)

答案 1 :(得分:0)

尝试将以下属性添加到HTML中:

<html><meta charset="UTF-8">......

<body dir="rtl">...