【问题标题】:Bi-directional Browser Title (Hebrew and English characters in Title)双向浏览器标题(标题中包含希伯来文和英文字符)
【发布时间】:2010-01-28 10:08:15
【问题描述】:

我有一个 aspx 页面,其标题中同时包含希伯来语和英语字符,并且单词的顺序被弄乱了。
有没有办法设置标题的样式,这样单词就不会弄乱了,还是操作系统的问题?

这就是标题应该说的:

这就是标题的实际样子:

【问题讨论】:

  • 你能发布一个例子(来源和它们的显示方式)吗?你能展示一下它应该是什么样子吗?
  • 感谢@Pekka,我发布了它们的显示方式。来源是一个 标签

标签: html bidi


【解决方案1】:

@jleedev 似乎已经有了正确的答案。这里有一些关于它的背景信息:

Creating HTML Pages in Arabic, Hebrew and Other Right-to-left Scripts

在某些情况下,您可能无法使用上一节中描述的标记。在 HTML 中,这些包括标题元素和任何属性值。

在这些情况下,您可以使用产生相同结果的不可见 Unicode 字符。

为了复制上面示例中描述的与嵌套基本方向相关的标记效果,我们可以使用成对的字符来包围嵌入的文本。第一个字符是 U+202B RIGHT-TO-LEFT EMBEDDING (RLE) 或 U+202A LEFT-TO-RIGHT EMBEDDING (LRE) 之一。这分别对应于标记<span dir="rtl"><span dir="ltr">。第二个字符是 U+202C POP DIRECTIONAL FORMATTING (PDF)。这对应于标记中的 。您可以在下面看到如何将其应用于前面的示例。

<p>The title says "&#x202B;...&#x202C;" in Hebrew<p>

【讨论】:

  • 不错的链接。我仍然认为 dir 属性应该表现得好像它用不可见的覆盖字符包围了文本是违反直觉的,但这不适用于 title 元素。
【解决方案2】:

尝试使用Unicode direction embedding codes

结果看起来像 הוספת קובץ JS עורך ישן - Mozilla Firefox,它的标记如下:

&#x202B; (right-to-left embedding)
הוספת קובץ
JS
עורך ישן
&#x202C; (pop directional formatting)
- Mozilla Firefox

(你应该可以用&lt;title dir="rtl"&gt;写标题,但我不能让它工作。)

【讨论】:

  • 我认为dir=rtl 是可行的方法,但它可能必须在bodyhtml 标签中指定。我不确定。
  • 我认为dir=rtl只对HTML渲染有影响,对浏览器外的小部件没有影响。
【解决方案3】:

如果你使用 utf-8 应该没有问题。

将以下内容添加到您的 并确保您保存为 utf-8

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

【讨论】:

  • 我们在 中有这个标签。至于另存为 utf-8 - 这是一个 aspx 页面,我不知道有什么地方可以告诉它这样保存。
  • 尝试将此添加到您的 web.config
  • Josh:单词的顺序与编码无关。您可以放心地假设字符本身正在正确传输。现在查看问题中的屏幕截图,您可以看到它绝对不是编码问题。
  • 问题是标题呈现为LTR段落。
  • 公平地说,我回答问题时没有截图
猜你喜欢
  • 2019-05-10
  • 1970-01-01
  • 2021-04-13
  • 1970-01-01
  • 1970-01-01
  • 2020-03-07
  • 2012-10-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多