我用WordPress开发了一个报纸门户。我正在使用Two languages in this portal Tamil(site language) and English.
现在我正在使用Nova Sans Tamil font for Tamil language font和Roboto font For English
在标题和菜单中,我可以使用css轻松地处理这个问题,但在内容主体中,我无法做到这一点,因为it is collaboration of two language fonts used in the site.
所以英文字体看起来不太好。
是否有任何JavaScript、CSS或其他方法可以基于文本语言设置不同的字体系列?
My need is
If the text is Tamil font then set Nova Sans Tamil
If the text is English font then set Roboto
(注意):我不能对英文字体使用不同的类,所以不要给出这个解决方案。因为我在数千个地方使用英文字体,所以很难更改。
SO网友:Ovidiu
无论您使用哪种语言切换解决方案,我确信它都会使用该语言设置一个元标记(请参见案例1),或者在html或body标记中添加一个类(请参见案例2)。
Case 1
如果您有一个meta或任何其他可识别的标记来保存语言值,但它不是内容的包装器,只需添加一个javascript代码来监视该标记上的更改,并根据meta或任何标记的值向主体添加一个类。
基于元标记的示例:
<meta name="language" content="english">
JS代码:
jQuery(document).ready(function(){
let newLang = jQuery(\'meta[name="language"]\').attr(\'content\');
jQuery(\'body\').removeClass(\'otherlanguage english\').addClass(newLang); \\\\i am removing both language classes to make sure they are not added twice
});
现在检查案例2,因为下一步就是这个步骤。
Case 2
然后在CSS中,只需将目标
body.english p {
font-family: whatever;
}