wordpress 如何在一个段落中为两种语言设置不同的字体系列

1dkrff03  于 2023-04-29  发布在  WordPress
关注(0)|答案(4)|浏览(166)

我有一个文本内容在我的html(wordpress),其中包含2种语言-希伯来语和英语。我试图找到在文本,只是字符串在英语和给予主题不同的字体家庭。我不想对每个字符串都使用内联样式。我需要使用正则表达式或其他东西,在我的“p”标签中找到这些字符串,给予主题我想要的特定字体。我该怎么做?

wz1wpwve

wz1wpwve1#

我也遇到过类似的问题。我发现我需要我的应用程序来提供任何和所有希伯来语(以及许多其他语言,就这一点而言)的一些关键部分。

<p> Your english here, <span lang="he" dir="rtl">your hebrew here</span></p>

有了这些额外的片段,我就有了一个CSS的选择器

*[lang='he'] {
  font-family: yourFont;
}

如果你想正确地做这件事,这可能是唯一不使用非常复杂的javascript的方法。

ie3xauqp

ie3xauqp2#

<span> Package 一种语言,然后应用css类会很好地工作,而且你不需要使用内联css样式。

.french{
  font-size:14px;
  font-weight: 500;
  color:red;
  font-family: Arial, Helvetica, sans-serif;
}
<p><span class="french">Ceci est un exemple.</span> this is is an example. <span class="french">Ceci est un exemple.</span></p>
w51jfk4q

w51jfk4q3#

下面是如何在伪代码中执行此操作的基本流程:
1.循环遍历字符串,并根据/[a-zA-Z]+/g测试每个字符,如果存在匹配,则您知道该字符是英语字符
1.当您找到一个匹配时,存储该索引
1.从存储的索引开始,循环遍历剩余的字符,直到找到Regexp计算结果为false的字符并存储该索引
1.现在你有了字符串的开始和结束索引,你需要用一个类为'englishText'的span来 Package 它们,例如:
var newText = yourText.slice(0, beginIndex) + '<span class="englishText>" + yourText.slice(beginIndex, endIndex) + "</span>" + yourText.slice(endIndex);
1.将原始文本元素的内部HTML设置为newText
这应该适用于只有一个英语文本出现的基本情况,如果有超过一个出现,您将需要存储开始和结束索引数组,并使用它们构建字符串。

hiz5n14c

hiz5n14c4#

字体不支持其他语言时的解决方案。

例如-您的字体在希伯来语和英语它回落到一些不需要的默认值。(此解决方案对于您希望为第二种语言选择其他字体的情况没有帮助)。
对于所有遇到这个问题的人来说,有一个简单得多的解决方案。我发现它是由于字体创建者的帮助。
解决方案是插入css字体家族,其他所需的字体家族为英语(或其他语言)。
例如:

.my-class{
  font-family: 'not_support_english', fantasy, sans-serif !important;
}

相关问题