CSS - 为什么中国网站使用英文字体族谱

11

我曾经参与过几个多语言网站的开发,其中包括英文和中文版本。对于中文版本,我通常会指定中文字体的CSS font-family,对于英文版本则指定英文字体的CSS font-family。这样做很合理,对吧?

html body.chinese {
   font-family: '宋体',宋体b8b体,Microsoft YaHei, Arial, sans-serif
}

中文:

html body {
   font-family: Arial,Helvetica,"Nimbus Sans L",sans-serif;
}

后来我注意到,我的字体在不同的操作系统/浏览器上显示中文时并不总是正确的,因此我去看了一些知名的中文网站是如何处理这个问题的...

我发现他们并没有指定中文字体,而只是像Arial一样指定英文字体。

请看百度网站:

body {
   font: 12px arial;
}

Weibo.com:

body, button, input, select, textarea {
   font: 12px/1.125 Arial,Helvetica,sans-serif;
   _font-family: "SimSun";
}

1)有没有人知道为什么百度没有指定像宋体这样的常见中文字体?

2)那么微博为什么也是这样做的,但在他们的字体声明下面添加了“_font-family:“SimSun””并在前面加上了下划线?

FYI:我使用英文和中文的电脑/浏览器进行了检查,并且我位于中国。它总是显示这样。


1
带下划线前缀的 CSS 属性是旧版 IE+Windows 的老式黑科技。我猜想微博上的字体使用 Arial 和 Helvetica,现代操作系统和/或浏览器可能会有一些具有中文字体回退的备用字体。旧版 Windows 或 IE 可能没有这种回退,因此需要使用下划线黑科技。 - Quad
这个问题似乎不适合讨论,因为它涉及到对编码决策背后原因的猜测。 - Jukka K. Korpela
不指定中文字体的原因是因为浏览器会回退到默认的中文字体,如黑体、宋体等。由于中文字体的大小较大,如果需要中文字体支持,请前往像justfont.com或youziku.com这样的网络字体公司。它们提供与Google Font API不同的字体支持。 - chenghuayang
1个回答

12

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接