2012-12-13 176 views
4

有沒有人有任何想法,HTML5有多語言支持。 我的意思是說,如果我設計我的英文網站和html5將轉換使用一些郎或翻譯或任何其他支持標籤將網頁轉換成相應的語言。HTML5支持多語言

任何指導或代碼都可以幫助我很多。

非常感謝!

回答

2

HTML5中沒有集成翻譯。 HTML提供對lang屬性的支持,該屬性指示給定標籤的內容被寫入的語言,但這僅僅是一個指示性屬性,不以任何方式修改內容。

爲什麼沒有自動翻譯的更哲學推理是HTML是一種結構語言......它定義了您的網頁構建的框架。它不僅不會修改內容,而且會影響翻譯質量和準確性。這可能是一件非常糟糕的事情......但是,您必須已經知道,Chrome會將外語翻譯爲您的首選語言。這裏的區別在於,Chrome由用戶控制,他有權決定以何種語言查看內容,以及他們是否希望查看由開發人員明確定義的原始內容。


翻譯取決於瀏覽器。要翻譯,你需要一個翻譯引擎,它會爲你做翻譯。正如你所知道的,你不能簡單地將單詞轉換爲一個單詞,並最終以另一種語言進行正確的翻譯。 Chrome利用Google翻譯的強大功能翻譯其網頁,這就是它提供此功能的方式。多語言支持的最佳選擇是以儘可能多的語言爲您的頁面準確提供您的頁面,然後希望不使用Chrome的用戶將您的網址插入Google翻譯或類似服務,以便近似獲取您的內容他們的母語。

+0

很好的解釋列維但對其他流行的瀏覽器像FF和Safari,以及如何對手機是什麼? – Nimmi

+0

查看已更新的回覆。 –

+0

感謝您將我的知識升級爲針對網絡的多語言支持。 – Nimmi

4

HTML5不會翻譯任何內容。它只是一種標記語言,它可以顯示您放入其中的內容,而無需對其應用任何邏輯。

但是,這樣的翻譯通常由Chrome,FireFox等現代瀏覽器完成。高級瀏覽器確實檢測到您正在查看的網站使用其他語言,併爲您提供將其轉換爲您的首選語言的選擇。

HTML5與整個翻譯事物有關的事情是它有一個新的屬性translate。通過使用這個屬性與"no"一個值,你可以現在你不想標誌元素被瀏覽器翻譯:

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

你做翻譯屬性更清晰,我... 感謝 – Nimmi

+0

這裏是很好的解釋關於翻譯屬性和谷歌翻譯和微軟翻譯http://rishida.net/blog/?p=831 –

2

的問題是 - 你想要的內容自動翻譯,還是你想翻譯你的網站的用戶界面。

本身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的開發者之一。)

最後,只是一個約好的做法提示:不要使用lang上所有相關的HTML元素屬性。即使它只是「en」。這對於拼寫檢查,選擇正確的字體,翻譯等是非常有用的。只要你知道語言,就指定它。它看起來可能是多餘的,但它是必要的。

+1

對不起,最近回覆但這些信息真的很有幫助。 謝謝... – Nimmi