如何指定您网页的语言,以便谷歌浏览器不提供翻译
Posted
技术标签:
【中文标题】如何指定您网页的语言,以便谷歌浏览器不提供翻译【英文标题】:How to specify your webpage's language so Google Chrome doesn't offer to translate it 【发布时间】:2011-02-28 03:51:00 【问题描述】:我有一个谷歌浏览器坚持认为是法语的页面。 这是它的快照:
http://yootles.com/outbox/overcleverchrome.html
请注意,我包含一个 meta http-equiv 标签来告诉它它实际上是英文:
<meta http-equiv="Content-language" content="en">
但这无济于事。 我还能做些什么来防止这种情况发生吗?
【问题讨论】:
我同意这个翻译器很麻烦,每次我需要点击关闭它都会让我想起 MS Office 中愚蠢的 MS 助手,这让每个人都紧张:( 在下面查看我的答案,将 class="notranslate" 添加到正文标签中 我也有同样的问题。在我看来,这是一个 Chrome 错误:如果在 HTML 5 页面中指定了 lang 属性,它应该定义元素的语言。我会忽略 Chrome 消息,直到他们在几个月左右修复它。我肯定不会为了让这个 bug 消失而在文档中添加一些特定于 Google 的代码。 这对每个人来说可能不是一个好的解决方案,但我在一个完全由数据表组成的页面上遇到了这个问题。我添加了一些描述数据的英文句子,问题就解决了。 “notranslate”选项也对我有用,但我不想限制 Google 可以对页面做什么,只是阻止它误解页面的语言。所以我很高兴只是添加了一些描述,这些描述可能一直都应该存在。 @ccalvert 好点,这应该是第一个尝试的! 【参考方案1】:添加 <meta name="google" value="notranslate">
(不是 W3C)或 <meta name="google" content="notranslate">
并不能避免烦人的翻译弹出窗口。
但我尝试了以下方法,它似乎有效:
您可以通过将class="notranslate"
添加到<body>
标记来避免页面翻译!
【讨论】:
可以确认这是唯一对我有用的选项(Angular Web 应用程序)。在主页中添加元标记没有任何作用,只是更改正文类有效。【参考方案2】:在旧版本的 Chrome (18.x) 上,Content-Language
元标记似乎对翻译弹出窗口没有影响,除非它是小写的:
<meta http-equiv="content-language" content="en" />
(要清楚 --http-equiv="Content-Language"
没有工作;name="content-language"
也没有)
【讨论】:
【参考方案3】:Google Chrome 目前需要多个标签才能使 (HTML5) 文档选择不翻译。在此之前,您应该确保自己了解受众的语言,否则会妨碍外国网站正确翻译您的网站。
相关标签为:
<meta charset="UTF-8" />
<meta name="google" content="notranslate" />
<meta http-equiv="Content-Language" content="en_US" />
这是一个完整的例子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="google" content="notranslate" />
<meta http-equiv="Content-Language" content="en_US" />
</head>
<body>
Dies ist ein Test Deutsch
</body>
【讨论】:
我可以确认这不起作用。元标记只占谷歌翻译算法的一小部分。 见上文,内容应为“en_US” Bing 等其他搜索引擎呢? 似乎 OP 不想完全禁用翻译,而是指定语言,以免谷歌翻译误解。content="notranslate"
或 value="notranslate"
哪个是正确的?在您的回答中,我看到了content
,但在此页面上的另一个答案中,我看到了value
【参考方案4】:
你们应该参考http://support.google.com/webmasters/bin/answer.py?hl=en&answer=79812 而不是猜测什么有效
<meta name="google" content="notranslate" />
【讨论】:
【参考方案5】:插入后记得在新标签页或新窗口中打开页面
<meta name="google" value="notranslate">
否则它看起来不起作用,但实际上效果很好。
【讨论】:
【参考方案6】:我找到了一个可能对你有帮助的帖子:http://www.blogsdna.com/4593/how-to-stop-google-from-translating-your-website-or-webpage.htm
您可以使用元标记:
<meta name="google" value="notranslate">
或者你可以使用一个类:
<span class="notranslate"></span>
我希望这回答了你的问题。
编辑:我刚刚查看了我提供的德语和英语博客。在每个语言版本上,Chrome 都不会要求我翻译:http://kau-boys.de
我检查了我的源代码,多语言插件只包含此代码:
<meta http-equiv="Content-Language" content="en_US" />
因此,您的区域设置可能需要有一个子区域,例如本例中的美国。
【讨论】:
我已经尝试了以上所有方法,但仍有 Chrome 提供翻译此特定页面的功能。我什至检查了 html 是否有效。 “google”元标记和“content-language”元标记都不适合我 编辑的解决方案对我有用。 ru_RU 用于俄语,没有任何烦人的自动翻译弹出窗口。 en_US 而不是 US 是当前版本 Google Chrome Canary 内容的关键 是的,目前——翻译栏仍在弹出。【参考方案7】:<meta name="google" content="notranslate" />
我成功了
【讨论】:
以上是关于如何指定您网页的语言,以便谷歌浏览器不提供翻译的主要内容,如果未能解决你的问题,请参考以下文章