1

我们正在开发一个需要同时支持 LTR 和 RTL 的网站。我们发现最好的方法是改变 CSS(即 LTR 的 CSS 和 RTL 的另一个)。效果很好,问题是如何决定语言需要 LTR 还是 RTL。我知道一种解决方案,我们从控制器获取接受语言,然后决定它是 LTR 还是 RTL,然后将此变量发送到 scala 模板,模板将有一个 if,else 语句来决定它将加载哪些 CSS ,但我们将在每个控制器中这样做,做这样的事情的最佳实践是什么,有没有办法从 scala 模板而不是控制器中知道接受语言?提前致谢

4

1 回答 1

0

我发现最接近的事情是,我在控制器中放置了一个方法,lang()然后获取它的 RTL 或 LTR,然后从我的 main.scala.html 加载符合该方法的 CSS 和 JS。所以我不应该担心从每个控制器方法传递 if 语句,main,scala.html 中的代码是这样的:

 @if(Language.isRTL()){
    <link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/bootstrap_rtl.min.css")">
}else{
    <link rel="stylesheet" media="screen" href="@routes.WebJarAssets.at(WebJarAssets.locate("bootstrap.min.css"))">
}
于 2015-03-05T12:39:50.673 回答