第七天:指定你的语言

你当然知道你用的是哪种语言,所以也请告诉你的读者──以及她们所用的软体。

谁因此获益?

  1. Jackie 从中获益了。因为她的屏幕朗读软体 (JAWS) 必须先知道你所使用的语言,在朗读时才能准确地发音。如果你没有指定, JAWS 就会试著猜测你所使用的语言,而它可能猜错;尤其是当你在网页里引述源码或混杂著其它不属于语言的内容时。
  2. 即使你写的就是英文, Google 也从中获益了,当你使用的不是英语时更是如此。根据 Google Zeitgeist 的数据显示,50% 的 Google 使用者用英语之外的语言搜寻,而且许多使用者在 Google preferences 设定只搜寻特定的语言。Google 自动侦测语系的算法比其它的都好,但是为什么要让 Google 的工作更加困难呢?

怎么做

首先你得找出正确的双字元语系码 (language code) 。英文的语系码是「 en 」、法文的语系码是「 fr 」、德文是「 de 」、中文则是「 zh 」。如果你用的是其它语言,请到这里找找。语系码并没有大小写的分别。

现在把语系码放在 <html> 卷标之前,实际的方法会依你所使用的 HTML 版本而有所不同。请先确定你的 DOCTYPE ,然后照著以下的步骤:

  1. 如果你用的是任一版本的 HTML 4 ,就修改你的 <html> 卷标(如果你用的不是英文,就换上你自己的语系码):

    <html lang="en">

  2. 如果你用的是任一版本的 XHTML 1.0 ,就修改你的 <html> 卷标(两个地方都要用你的语系码):

    <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">

  3. 如果你用的是任一版本的 XHTML 1.1 ,就修改你的 <html> 卷标(当然,用你自己的语系码):

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">

DOCTYPE 一样,你也应该在每个页面里指定你所使用的语言。

另外也请注意:如果你同一个页面里里使用了一种以上的语言,你也可以在任何组件里指定使用的语言。比方说,如果你的网站 (HTML 4) 主要使用德语,但是你引用了一段英语的文章,那么可以像这样标注:

<html lang="de">
  ...
  <blockquote lang="en">
    ...
  </blockquote>

延伸阅读