如何在一个段落中为2种语言设置不同的font-family

时间:2017-12-11 22:06:30

标签: javascript jquery html css wordpress

我的html(wordpress)中有一个文本内容,其中包含2种语言 - 希伯来语和英语。 我试图在文本中找到,只是在英文中找到字符串,并为主题提供不同的font-family。 我不想为每个字符串使用内联样式。 我需要使用正则表达式或其他东西,在我的" p"标记,那些字符串,并给主题我想要的特定字体。 我怎么能这样做?

3 个答案:

答案 0 :(得分:0)

<span>中包含一种语言并对其应用css类将很有效,并且您不需要使用内联CSS样式。

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

答案 1 :(得分:0)

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

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

必须拥有那些额外的作品才能为我的css选择一个选择器

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

如果你想做得对,这可能是不使用严重复杂的javascript的唯一方法。

答案 2 :(得分:0)

以下是如何在伪代码中执行此操作的基本流程:

  1. 循环播放字符串并针对/[a-zA-Z]+/g测试每个字符,如果匹配,则表示该字符为英文

  2. 当您找到索引

  3. 的匹配商店时
  4. 从存储的索引循环开始,直到找到Regexp评估为false的字符,然后存储该索引

  5. 现在您已经拥有了字符串的开头和结尾索引,您需要使用具有“englishText”类的span来包装它们,例如:

    var newText = yourText.slice(0, beginIndex) + '<span class="englishText>" + yourText.slice(beginIndex, endIndex) + "</span>" + yourText.slice(endIndex);

  6. 将原始文本元素的内部HTML设置为newText

  7. 这应该适用于只有一次出现英文文本的基本情况,如果有多次出现,你需要在数组中存储开始和结束索引,并使用它们构建字符串。