2008-10-08 51 views
1

我试图本地化我的aspx页面。我完成了使用.net f/w提供的L10n功能的内容本地化,如资源文件。但是我发现很难在页面标题中设置本地数据。本地化页面的html标题问题

大部分的浏览器,包括IE和FF的,显示了与一些箱子窗口标题的内容(FF将显示选项卡正确本地化的文本,IE浏览器甚至不这样做)。但它在safari(在windows中)工作正常。

当我做了一项研究,似乎这个问题只对一些语言退出。例如,Hindi version of BBC显示带有框的标题。但Arabic version显示标题中的本地化文本。

有人可以告诉我为什么会发生这种情况吗?我们如何解决这个问题?

注:我的网站正在使用Asp.net 2.0/IIS

回答

5

我怀疑这是一个字体的问题。浏览器标题栏和其他窗口装饰通常由您的操作系统呈现,而不是由浏览器本身呈现,因此如果您已将Windows配置为使用不支持印地语,阿拉伯语等所需的其他字符字形的字体,那么你会得到这些盒子。在您的实际页面中,您可能使用了包含对所有这些扩展字符的支持的字体,这就是为什么您只能在窗口标题上看到问题的原因。

Safari使用自己的渲染引擎的一切,包括窗口镶边,这就是为什么它看起来并不像一个正常的Windows应用程序,以及为什么你的本地化名称正在工作。

您可能想尝试将Windows的“Active Title Bar”字体(在显示属性,外观,高级下)更改为像Arial这样的内容,其中包含全套Unicode字符,并查看是否可以解决问题?

+0

@Dylan:感谢很多你的答案。我也在同样的思路。无论如何,我通过设置“Arial Unicode MS”字体来解决我的机器中的问题。但是好像我不得不忍受这个问题,因为我可能无法控制我的机器的用户:( – 2008-10-08 10:02:28

1

对我来说,无论是英国广播公司网站链接到获得在窗口的标题栏(使用Firefox或IE,在Windows上)适当的字符。

我怀疑你没有安装正确的字体,但我不确定你会错过什么样的字体,尤其是没有Safari的工作。

在任何情况下,我认为这是与您的系统的配置的问题,而不是与你正在开发的网站。希望你的目标受众将有一个正确配置的系统来显示他们自己的语言。

0

这是一个字体问题,而不是您可以在服务器端修复的问题。如果用于标题栏文本的字体缺少用于制表符的字体中存在的字形,则它将在标签中正确显示,但不会显示在标题栏中。这也解释了为什么Safari会工作 - 它使用自己的字体和字体渲染系统。

0

问题与浏览器在何处以及如何显示网页标题有关。

IE显示标准窗口标题中的页面标题。 IE本身并不执行绘图,而是将其留给操作系统。 OS标题绘图代码使用标准字体,这取决于操作系统区域设置。您机器上的默认字体可能没有印地文的字符。因此箱子。

Firefox不会在标题中进行自定义绘图,因此它会显示相同的框。但是,FF使用其选择的字体绘制标签。

Safari浏览器做的一切的自定义绘制,包括窗口标题,并使用其选择的字体。

0

我看到在Windows和Linux在你给的链接没有问题,火狐2 & 3。在窗口标题和标签标题上。