HTML5支持多语言

时间:2012-12-13 09:25:11

标签: html5 translation multilingual

有没有人知道HTML5有多语言支持。 我的意思是说,如果我用英语设计我的网站,html5将使用一些lang或翻译转换,或任何其他支持标记将该网页转换为相应的语言。

任何指导或一些代码都可以帮助我。

非常感谢!!!

3 个答案:

答案 0 :(得分:5)

HTML5不翻译任何内容。它只是一种标记语言,可以显示您放入其中的内容,而无需对其应用任何逻辑。

但是,此类翻译通常由Chrome,FireFox等现代浏览器完成。高级浏览器会检测到您正在查看的网站是否使用其他语言,并且您可以选择将其转换为您的首选语言。

HTML5与整个翻译事物有关的唯一事情就是它有一个名为translate的新属性。通过使用值为"no"的此属性,您现在可以标记不希望被浏览器翻译的元素:

<span translate="no">衝撞撞沒輸贏」應是「衝衝撞撞沒輸贏</span>
<!--Now no browser will dare to translate this.-->

答案 1 :(得分:4)

问题是 - 您要自动翻译内容,还是要翻译网站的用户界面。

HTML5本身并没有真正提供完全支持,只提供一些提示,甚至它们并没有在任何地方真正实现。

您可以在网站上添加Google翻译按钮,例如http://www.labnol.org/internet/google-translation-widgets/10135/中所述。谷歌浏览器内置了它,适用于所有网站。其他浏览器将来可能会获得此类功能,但这是浏览器应用程序的一项功能,而不是HTML。

要翻译您网站的界面,您可以使用众多国际化库中的一个。许多CMS和Web框架都带有这样的i18n库。您也可以使用jquery.i18n(https://github.com/wikimedia/jquery.i18n/)等库在客户端执行此操作。

(免责声明:我是juery.i18n的开发者之一。)

最后,只是关于良好实践的提示:在所有相关HTML元素上使用lang属性。即使它只是“en”。这对于拼写检查,选择正确的字体,翻译等非常有用。每当您知道语言时,请指定它。这可能看似多余,但需要它。

答案 2 :(得分:2)

HTML5中没有集成翻译。 HTML提供对lang属性的支持,该属性指示给定标记的内容写入的语言,但这仅仅是一个指示性属性,不会以任何方式修改内容。

为什么没有自动翻译的哲学推理背后的原因是HTML是一种结构语言......它定义了构建网页的框架。它不仅不会修改内容,而且如果它会影响您,因为开发人员将无法控制翻译的质量和准确性。这可能是一件非常糟糕的事情......

但是,您必须知道,Chrome会将您使用外语的网页翻译成您的首选语言。这里的不同之处在于Chrome由用户控制,用户有权决定使用何种语言查看内容,以及他们是否希望查看由您(开发人员)明确定义的原始内容。


翻译由浏览器决定。要进行翻译,您需要一个能够实际为您翻译的翻译引擎。如您所知,您不能简单地逐个转换单词并最终使用另一种语言进行正确的翻译。 Chrome利用Google翻译的强大功能翻译其网页,这就是它提供此功能的方式。多语言支持的最佳选择是以尽可能多的语言提供您的网页,然后希望不使用Chrome的用户将您的网址插入Google翻译或类似服务,以获得您的内容的近似值他们的母语。