代码之家  ›  专栏  ›  技术社区  ›  Vijesh VP

本地化网页的HTML标题时出现问题

  •  1
  • Vijesh VP  · 技术社区  · 16 年前

    我正在尝试本地化我的ASPX页面。我已经使用.NET f/w提供的l10n功能完成了内容本地化,比如资源文件。但我发现很难在页面标题中设置本地数据。

    大多数浏览器,包括IE和FF,在窗口标题上用一些框显示内容(FF将在选项卡中显示适当本地化的文本,IE甚至不这样做)。但在Safari(在Windows上)中工作正常。

    当我做一项研究时,这个问题似乎只适用于某些语言。例如, Hindi version of BBC 用方框显示标题。但是 Arabic version 在标题中显示本地化文本。

    有人能告诉我为什么会这样吗?我们如何解决这个问题?

    注意:我的网站正在使用ASP.NET 2.0/IIS

    5 回复  |  直到 16 年前
        1
  •  5
  •   Dylan Beattie    16 年前

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

    Safari使用自己的渲染引擎来处理所有东西,包括window chrome,这就是为什么它看起来不像普通的windows应用程序,以及为什么您的本地化标题可以工作的原因。

    您可能想尝试将您的Windows“活动标题栏”字体(在“显示属性”、“外观”、“高级”下)更改为类似于Arial的字体,该字体覆盖了完整的Unicode字符集,然后看看这是否解决了问题?

        2
  •  1
  •   Mark Baker    16 年前

    对于我来说,你链接的两个BBC网站都可以在窗口标题栏中找到合适的字符(在Windows上使用firefox或ie)。

    我怀疑你没有安装正确的字体,虽然我不完全确定是什么字体导致了这个问题,尤其是如果Safari工作的话。

    无论如何,我认为这是系统配置的问题,而不是您正在开发的站点。希望你的目标读者有一个正确配置的系统来显示他们自己的语言。

        3
  •  0
  •   John Millikin    16 年前

    这是字体问题,而不是服务器端可以修复的问题。如果用于标题栏文本的字体缺少用于选项卡的字体中的字形,则它将正确显示在选项卡中,而不是标题栏中。这也解释了Safari的工作原理——它使用自己的字体和字体渲染系统。

        4
  •  0
  •   Franci Penov    16 年前

    这个问题与浏览器显示网页标题的位置和方式有关。

    IE在标准窗口标题中显示页面标题。IE不自己绘制,而是把它留给操作系统。OS标题绘图代码使用标准字体,这取决于OS区域设置。您机器上的默认字体可能没有印地语字符。这就是盒子。

    firefox在标题中不做自定义绘制,所以它显示相同的框。但是,FF使用其选择的字体绘制选项卡。

    Safari会定制所有东西,包括窗口标题,并使用自己选择的字体。

        5
  •  0
  •   Osama Al-Maadeed    16 年前

    在Windows和Linux上,您提供的链接firefox 2&3没有任何问题。在窗口标题和选项卡标题上。