在网页中有两种CSS嵌入式语言风格,用于不同的文本类型

Had*_*i.M 5 html javascript css php css3

我正在使用HTML,CSS,PHP和JS进行多语言网站,所以根据用户输入,文本可能是英语或法语,因为我从数据库中提取数据.

在CSS中是否有一种方法可以自动检查文本是否为英文,因此它将应用嵌入的英文字体,如果在法国,它将应用嵌入的法国字体.

如果我以前知道语言,我会将一些CSS类应用于文本HTML元素,例如<p class="en"></p><p class="fr"></p>.但我不知道语言是来自DB的文本.

Que*_*tin 8

浏览器不会根据文本检测语言,但如果使用正确的标记指定它:

<html lang="fr">
Run Code Online (Sandbox Code Playgroud)

然后你可以使用psuedo-class语言:

html:lang(fr) {
    /* your rules */
}
Run Code Online (Sandbox Code Playgroud)


Poi*_*nty 4

CSS 没有原生方法可以做到这一点,但您的服务器大概知道它是用英语还是法语响应。因此,您可以执行类似于 Modernizr 所做的操作并向标签添加一个类<html>

 <html class='french'>
Run Code Online (Sandbox Code Playgroud)

然后你就可以拥有基于此的 CSS 规则:

 .french body { font-family: YourFrenchFont, sans-serif; }
Run Code Online (Sandbox Code Playgroud)

编辑- 昆汀的答案类似但更好,因为它使用为此目的而设计的标准符号。然而,对于那些不幸不得不关心的人来说,这将在旧版本的 IE 中起作用。