选择其他语言时,请更改样式表。

时间:2018-10-08 12:29:50

标签: javascript css angular

我有一个angular 6应用程序,它支持标准Left编写内容。 我需要阿拉伯语的支持,因此我进行了一些研究,结识了Bootsrap RTL。 我需要知道是否有可能在选择主页语言时重新加载整个style.scss文件。如果选择阿拉伯语,则应加载RTL或默认为LTR。先感谢您。

2 个答案:

答案 0 :(得分:2)

您可以通过JS更改lang元素(root)的<html>属性,并基于该属性在CSS rtl方向中进行设置,因此无需加载另一个资源,例如

JS (切换语言)

document.documentElement.setAttribute('lang', 'ar');

CSS

body { 
   direction: ltr;
}

[lang="ar"] body {
   direction: rtl;
}

答案 1 :(得分:0)

本地浏览器支持div元素的dir属性,因此您可以通过dir属性来修改方向。

<div dir="ltr">Hello World. This gets displayed from left to right</div>
<div dir="rtl">Hello World. This gets displayed from right to left</div>

从ts文件传递动态变量以进行角度应用,

<div dir="[direction]"></div>

根据角度应用的配置将方向值设置为ltr / rtl